Прочесть с клавиатуры n текстовых строк с пробелами. - C (СИ)
Формулировка задачи:
#include <stdio.h> int main () { typedef char string[256]; int i, n; printf("n="); scanf("%i", &n); string s[n]; for (i=1; i<=n; i++) { printf("%i: ", i); fgets(s[i], 256, stdin); } for (i=1; i<=n; i++) { printf("%i: %s\n", i, s[i]); } return 0; }
n=3 1: 2: текст текст текст 3: еще текст текст 1: 2: текст текст текст 3: еще текст текст
Решение задачи: «Прочесть с клавиатуры n текстовых строк с пробелами.»
textual
Листинг программы
#include <stdio.h> int main () { typedef char string[256]; int i, n; printf("n="); scanf("%i", &n); string s[n]; fflush(stdin); for (i=1; i<=n; i++) { printf("%i: ", i); fgets(s[i], 256, stdin); } for (i=1; i<=n; i++) { printf("%i: %s\n", i, s[i]); } return 0; }
Объяснение кода листинга программы
В этом коде:
- Типизируется массив символов как строка фиксированной длины.
- В цикле запрашивается количество строк для ввода (n).
- Создается массив строк s[n] для хранения введенных строк.
- Используя fflush(stdin), обнуляем буфер ввода, чтобы избежать ошибок при использовании scanf.
- В цикле считываются строки с клавиатуры и сохраняются в массиве s.
- Выводится на экран каждая строка, используя цикл.
- Программа завершается успешно, возвращая 0.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д