Это часть более крупной программы, которую я пытаюсь написать, но по какой-то причине я, похоже, застрял в этой части, и я надеюсь, что кто-то объяснит, почему у меня эта проблема.Прокрутка Текстовая программа
Так что я хочу сосредоточиться на этом сообщении, это взять целое число, которое определяет, сколько слов будет следовать. Затем я хочу взять каждое слово и немедленно распечатать его.
Это то, что у меня есть.
int main(){
int i;
int numWords;
char word[100];
scanf("%d", &numWords);
for(i=0;i<numWords;i++){
gets(word);
printf("The word is %s\n", word);
}
return 0;
}
У меня есть входной файл, который гласит:
5
Hello
world
this
is
happening
Это то, что выводится
The word is
The word is Hello
The word is world
The word is this
The word is is
Как я уже сказал, это только часть того, что мне нужно сделать, но выяснение этого поможет мне закончить все остальное.
Вы не должны использовать 'gets()', что неизбежно приводит к переполнению буфера. – MikeCAT
[Программа не сработала] (http://melpon.org/wandbox/permlink/KECkQRHEKDanvjhH). – MikeCAT
Если у вас есть сбои, тогда запустите в отладчике, чтобы поймать крах в действии, и посмотрите, где именно в вашем коде произошел сбой. Также взгляните на все переменные и убедитесь, что их значения выглядят подходящими. –