Напечатайте заданную последовательность символов, заменяя каждую точку многоточием - C (СИ)
Формулировка задачи:
Напечатайте заданную последовательность символов, заменяя каждую точку многоточием.
Решение задачи: «Напечатайте заданную последовательность символов, заменяя каждую точку многоточием»
textual
Листинг программы
#include <stdio.h>
int main ( void )
{
unsigned char currentCharacter;
puts( "Enter your text" );
fflush( stdout );
while (( currentCharacter = getchar()) != EOF && currentCharacter != '\n' )
if ( currentCharacter == '.' )
printf( "%s", "..." );
else
putchar( currentCharacter );
puts( "" );
return 0;
}
Объяснение кода листинга программы
В этом коде:
- Подключается стандартная библиотека для ввода-вывода
. - В функции main() объявляется переменная currentCharacter типа unsigned char, которая будет использоваться для хранения текущего вводимого символа.
- Выводится приглашение для ввода текста
Enter your text. - Используется функция fflush(stdout), чтобы очистить буфер вывода и убедиться, что предыдущий вызов printf() или putchar() был выведен на консоль.
- Запускается цикл while, который будет выполняться до тех пор, пока не достигнется конец файла (EOF) или не будет введен символ новой строки (\n).
- Внутри цикла проверяется, равен ли текущий символ точке ('.'). Если да, то вместо него выводится многоточие
...с помощью функции printf(). В противном случае, символ выводится на консоль с помощью функции putchar(). - После окончания цикла выводится пустая строка с помощью функции puts().
- Функция main() возвращает 0, что означает успешное завершение программы. Таким образом, этот код позволяет пользователю ввести текст, заменяя каждую точку многоточием.