-1

私は言葉のリストを持っています:

Hello
FAR
DC2012

これらすべてを文字列としてスキャンし、バイナリ ツリーに配置する必要があります。をスキャンするときを除いて、プログラムは 3 番目の文字列 "DC2012" で失敗します。数字があり、「tolower」機能を使用しているためだと思いますが、使用する必要があるのでわかりません。スキャン用のコードは次のとおりです。

while (fscanf(afp, "%s ", words) != NULL) {

            for(i=0; words[i]!='\0'; i++){
                words[i]=(char)tolower(words[i]);
            }
            printf("%s\n", words);
4

1 に答える 1

1

fgets()の代わりに使用して、無限ループを実行しますscanf。また、 の戻り値をキャストする必要はありませんtolower()

于 2012-11-15T15:47:11.033 に答える