大佬们求助,这样为什么5WA了

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

Khimowski @ 2023-11-13 19:39:29

#include<bits/stdc++.h>

using namespace std;

int main() {
    char a[5];
    char in;
    int i = 1;
    in = getchar();
    while(in!='.') {
        a[i++] = in;
        in = getchar();
    }

    in = getchar();
    cout<<in;
    cout<<'.';
    for(int j = i;j >= 1;j--) {
        cout<<a[j];
    }
}

这为啥是5WA啊,我甚至下载了数据点,输出看着没什么问题


by Shirley_ninefish @ 2023-11-13 20:00:51

@Khimowski 你的i多加了一次,最后i再减1应该就好了


by Khimowski @ 2023-11-14 19:36:33

@Shirley_ninefish 过了过了!谢谢!不过为什么这样i多1的情况下,VSCode运行给的输出却看上去没什么问题呢,请问一下


by Shirley_ninefish @ 2023-11-14 19:52:59

@Khimowski 你的i多加了一次1,所以小数点后面就多输出了一个ASCII码为0的东西。 emmm具体输出在不同编译器下是啥我也不太清楚,我在vscode上也是显示没有问题的,但是在洛谷的在线ide编译就会出一个乱码。我猜可能有些编译器输出是为空,有些会是乱码吧? 你可以去查查相关的资料qwq


by Khimowski @ 2023-11-14 19:59:49

@Shirley_ninefish 好好好,谢谢大佬


|