|
> 自分で考えたのですが、strstr()や、fpruntf(),fputcharをどこに
> 加えたらよいのか分かりません。
fpruntf() や fputchar() という関数はありません。
また、strstr() を使うと hat という単語を探すつもりでも、
that や what がひっかかってしまいます。
単語を読み込んで、strcmp() で比較しましょう。
#include <stdio.h>
#include <string.h>
int main(int argc, char *argv[])
{
FILE *fp; char word[100]; int n, count = 0;
if (argc != 3)
return printf("usage: %s word filename\n", argv[0]), 1;
fp = fopen(argv[2], "r");
if (fp == NULL) return printf("can't open %s\n", argv[2]), 1;
while ((n = fscanf(fp, "%*[^a-zA-Z]%99[a-zA-Z]", word)) != EOF)
if (n == 1 && strcmp(word, argv[1]) == 0) count++;
fclose(fp);
fp = fopen("log.txt", "w");
if (fp == NULL) return printf("can't create log.txt\n"), 1;
fprintf(fp, "%d\n", count);
fclose(fp);
return 0;
}
|