Если ввести один символ, то итерация цикла выполняется сразу два раза подряд - C (СИ)
Формулировка задачи:
while (getchar())
printf("Итерация цикла.\n");Решение задачи: «Если ввести один символ, то итерация цикла выполняется сразу два раза подряд»
textual
Листинг программы
#include <stdio.h>
int main()
{
char sym[1];
while(fgets(sym, 2, stdin) && sym[0] != 'Q'){
if('\n'!=sym[0]){
printf("%#0x(%c)\n", sym[0], sym[0]);
}
else{
printf("Bingo sym end string\n");
}
}
return 0;
}
Объяснение кода листинга программы
В этом коде используется язык программирования C. Вот список действий, которые выполняются в этом коде:
- Создается массив символов
sym, который может хранить до двух символов. - Запускается цикл while, который продолжает выполняться, пока не будет введен символ 'Q' и пока не будет прочитана строка, используя функцию
fgets(). - В каждой итерации цикла проверяется, является ли первый символ строки символом новой строки ('\n').
- Если первый символ не является символом новой строки, то этот символ выводится на экран с помощью функции
printf(), при этом используется спецификатор формата%#0x(%c), который выводит символ в шестнадцатеричной системе счисления и в виде символа. - Если первый символ является символом новой строки, то выводится сообщение
Bingo sym end string. - После завершения цикла while программа возвращает 0, что означает успешное завершение программы. Код не предусматривает ввод символа, поэтому он будет выполняться бесконечно, пока не будет введен символ 'Q'.