Отчет по лабораторной работе 1 Представление строки символов с маркером, ее обработка
Скачать 133.42 Kb.
|
МИНОБРНАУКИ РОССИИ Санкт-Петербургский государственный электротехнический университет «ЛЭТИ» им. В.И. Ульянова (Ленина) КАФЕДРА САПР отчет по лабораторной работе №1 «Представление строки символов с маркером, ее обработка» по дисциплине «Программирование»
Санкт-Петербург 2021 Исходная формулировка задания Заданная строка, возможно, состоит из слов, разделенных одним или несколькими пробелами. Преобразовать слово с заданным номером следующим образом: удалить из каждой группы, содержащей более двух подряд идущих цифр, которым предшествует точка, все цифры, начиная с третьей. Программа на C++: #include #include #include int main() { system("chcp 1251 > nul"); char str[80]; int i, j; printf("Введите строку:\n"); fgets(str, sizeof(str), stdin); printf("Новая строка: \n"); if (strchr(str, '$')) { for (i = 0; str[i] != '$' && i < strlen(str); i++) { if (str[i] == '.') { printf("%c", '.'); i++; j = i; while ((int)str[j] >= 48 && (int)str[j] <= 57) j++; if (j - i > 2) { printf("%c%c", str[i], str[i + 1]); i += j - i - 1; } else { printf("%c%c", str[i], str[i + 1]); i++; } } else printf("%c", str[i]); } } else printf("Последовательность не заканчивается на '$'!"); return 0; } Тестирование |