C语言 文件读写fscanf 不能读取文件第一行

我在做USACO的训练题
按照要求写了个读文件的程序,但是出了一点我不能理解的bug
希望老师指点指点

程序:

 int main () {
        char comet[6];
        char group[6];
        FILE *input;

        input=fopen ("ride.in", "r");
        fscanf (input, "%s\n%s", comet, group );   \\fscanf (input, "%s%s", comet, group );   都试过结果是一样的

        //test input
    puts ("\ntest input");
        printf ("%s\n%s\n", comet, group );
        printf ("%c\n%c\n", comet[0], group[0] );

        return 0;
}

ride.in 文件内容:

COMETQ
HVNGAT

编译后的输出却是:


HVNGAT

H

程序测试没有问题。请检查一下你的ride.in的编码是不是ANSI,如果是UTF-8,Unicode等,可能会有问题。

表示我的机子上跑没问题。。。表示作为一个菜鸟,不知道原因,不过对于
\fscanf (input, "%s%s", comet, group );
我把这里的“\”改成了"//"……
图片说明
这是我的运行结果。。。

用fscanf一定要保证写入的格式和读出的格式完全一致才可以,用UE看下你的源文件里面的字符的十六进制数,看看有没有什么你看不到的字符

LZ注释错了//fscanf (input, "%s%s", comet, group );