编译器上测试,答案不对,反而全部AC

P5705 【深基2.例7】数字反转

cnbb12 @ 2020-07-22 16:29:27

#include <stdio.h>
#include <ctype.h>
int main() {
    char a[10];
    int i=0,length=0;
    do{
        scanf("%c",&a[i]);
        i++;
    }while(a[i-1]!='\n');
    for(i=i-3;i>=0;i--){//这个地方写成i=i-2,自己测试答案是对的,但WA,提示第一个数据是回车,改成i-3测试答案不对,但AC
        printf("%c",a[i]);
    }
    return 0;
}

求助 无解


by FerventTemp0 @ 2020-07-22 16:32:59

这估计是 Windows 和 Linux 换行符的问题吧……


by iMya_nlgau @ 2020-07-22 16:35:26

为啥不用 scanf("%s",a) 读入呢


by gaozitao1 @ 2020-07-26 10:16:20

@cnbb12 因为洛谷上换行是两个字符,编译器上测试回车是一个字符


by cnbb12 @ 2020-07-26 12:24:19

@gaozitao1 谢谢


|