编程以搜索文件中的单词并打印出现的单词

时间:2014-02-19 01:04:10

标签: c file

编写一个C程序,从键盘上读取文件名和一个单词。程序必须打印具有此单词的文件的所有行。

我找不到办法让这项工作。

我这样做了:

char nome_arq[20];

printf("Tell me the name of file: ");
scanf(" %s", nome_arq);

FILE *fp = fopen(nome_arq, "r");

if(!fp) return 0;

char palavra[40];

printf("Tell me the word: ");
scanf(" %s", palavra);

while(!feof(fp)) {
    char palavra2[40];

    fscanf(fp, " %[^' ']", palavra2);

    if(!strcmp(palavra, palavra2)) {
        char linha[400];
        fgets(linha, 400, fp);
        printf("%s\n", linha);
    }
}

return 0;

但是它只是打印出自单词到最后的行。

请帮助。

0 个答案:

没有答案