Слайд 1Основы программирования
Лабораторная работа №11
Строки, символы,
многомодульный проект
Власенко О.Ф.
Слайд 3Задача 1+ – Hello по русски!
1. Закомментируйте строку SetConsoleCP(1251);
Запустите
программу – посмотрите что получилось.
Раскомментируйте!
2. Закомментируйте строку SetConsoleOutputCP (1251);
Запустите программу
– посмотрите что получилось.
Раскомментируйте!
3. Попробуйте ввести длинное имя – «Иван Иванович Иванов»
Посмотрите что получилось? Почему так получилось?
Слайд 4Задача 2
Ввести символ CH
Вывести на экран 20 символов с кодами
от CH до CH+19
Слайд 5Задача 3
Ввести символ CH
Вывести на экран 30 символов с кодами
от CH до CH-29
Слайд 6Задача 4
Ввести строку s. Подсчитать, сколько в ней пробелов
Слайд 7Задача 5
Ввести строку s. Все пробелы в ней заменить символом
Слайд 8Задача 6.1
Ввести строку s. Все цифры в ней заменить символом
‘$‘.
Используйте стандартную функцию isdigit()
Слайд 9Задача 6.2
Ввести строку s. Все цифры в ней заменить символом
‘$‘
Используйте свою собственную реализацию функции isdigit()
Слайд 10Задача 7.1
Ввести строку s (без русских символов). Все маленькие латинские
буквы превратить в большие
Используйте стандартную функцию toupper
Слайд 11Задача 7.2
Ввести строку s с русскими и латинскими символами. Все
маленькие буквы превратить в большие.
Используйте свою собственную реализацию функции toupper
Слайд 12Задача 8
Создать на основе разработанного кода проект с несколькими модулями.
Слайд 13Задача 8 (1)
Создаем новый проект
Слайд 14Задача 8 (2)
Создаем файл для главного модуля – в нем
будет находиться main()
Слайд 15Задача 8 (3)
В главный модуль вставляем код main() с реализацией
задачи 7.2
Слайд 16Задача 8 (4)
Создаем второй модуль – в нем будут находиться
наши собственные реализации функций isDigitMy, toUpperAll и других.
Слайд 17Задача 8 (5)
В CPP файл второго модуля вставляем код функций
isDigitMy, toUpperAll
Слайд 18Задача 8 (6)
Создаем заголовочный файл для второго модуля
Слайд 19Задача 8 (7)
В заголовочный файл второго модуля добавляем прототипы функций
isDigitMy, toUpperAll
Слайд 20Задача 8 (8)
В главный модуль включаем заголовочный файл нашего второго
модуля
Слайд 21Задача 8 (9)
В CPP файл нашего второго модуля включаем заголовочный
файл нашего же второго модуля
Слайд 23Задача 8 (11)
Запускаем на выполнение!
Слайд 24Задача 9 *
Реализовать собственную версию функции int strlen(char *)
Добавить ее
во второй модуль
Написать код для проверки работоспособности этой функции
– можно использовать код из лекции
Слайд 25Задача 10 *
Реализовать собственную версию функции int strcmp (char *,
char *)
Добавить ее во второй модуль
Написать код для проверки
работоспособности этой функции – можно использовать код из лекции
Слайд 26Задача 11 **
Реализовать собственную версию функции void strcpy (char *,
char *)
Добавить ее во второй модуль
Написать код для проверки
работоспособности этой функции – можно использовать код из лекции
Слайд 27Задача 12 **
Реализовать собственную версию функции void strcat (char *,
char *)
Добавить ее во второй модуль
Написать код для проверки
работоспособности этой функции – можно использовать код из лекции
Слайд 28Домашнее задание
Доделать все 12 задач, которые не были сделаны дома.
Все
собственные функции должны быть собраны во втором модуле.
В главном модуле
для каждой из задач должен быть отдельный метод, в котором выполняет ввод, обработка и вывод.
Если все 12 задач были сделаны и предъявлены в течении пары классной работы, то отчет по 11 лабораторной работе включает ТОЛЬКО 2 листа: 1. титульный 2. Лист с Заданием + Вывод
Если хотя бы одна задача не была сделана и сдана в течение пары в классе, то необходимо оформить полноценный отчет:
Титульный лист
Задание
Распечатка всех модулей
Блоксхема всех функций и реализации всех задач – с 1 по 12
Трассировка любых двух задач – где есть циклы
Выводы