Сосчитать и вывести количество введённых символов - C (СИ)
Формулировка задачи:
Код должен сосчитать и вывести количество введённых символов. Но после ввода символа/строки программа не завершается и не выводит значение num. В чем ошибка? Разве функция getchar не возвращает символ конца строки/файла после нажатия Enter?
#include <stdio.h>
main () {
int num = 0;
while ( getchar () != EOF )
++num;
printf ( "%d\n", num);
}Решение задачи: «Сосчитать и вывести количество введённых символов»
textual
Листинг программы
#include <stdio.h>
main()
{
int num=0;
while (getchar != EOF)
++num;
printf( "%d\n", num);
}
Объяснение кода листинга программы
- Включаем стандартную библиотеку ввода-вывода
- Объявляем функцию main()
- Инициализируем переменную num значением 0
- Запускаем цикл while, который будет выполняться до тех пор, пока getchar() не вернет EOF (конец файла). Условие цикла: getchar() != EOF
- Внутри цикла увеличиваем значение переменной num на 1
- После окончания цикла выводим значение переменной num с помощью функции printf()
- Значение, которое выводится - это количество введенных символов.
- Выводим символ новой строки с помощью символа перевода строки \n