ユーザーが単語を入力できるようにするプログラムを作成しようとしています。その後、プログラムは入力された単語をファイルで検索します。ただし、私のプログラムで何が起こるかは、単語を入力しても、入力しているchar配列の0から開始されないことだと思います
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char const *argv[])
{
int num =0;
char word[2000];
char *string;
FILE *in_file = fopen("words.txt", "r");
//FILE *out_file = fopen("output.txt", "w");
if (in_file == NULL)
{
printf("Error file missing\n");
exit(-1);
}
while(word[0]!= '0')
{
printf("please enter a word(enter 0 to end)\n");
scanf("%s",word);
while(!feof(in_file))
{
fscanf(in_file,"%s",string);
if(!strcmp(string,word))//if match found
num++;
}
printf("we found the word %s in the file %d times\n",word,num );
num = 0;
}
return 0;
}
誰かが私を助けて、正しい位置に読み直すことができますか? それで、単語を比較するとき、それは正しく行われますか?