C语言 我希望在输入完整个输入后打印输出,而不是显示输入的每一行的输出

mklgxw1f  于 2023-02-07  发布在  其他
关注(0)|答案(1)|浏览(97)

所以我是新的代码块。我想知道我是否可以使代码块输出我的代码后,我把整个输入?因为我的代码块总是显示输出的每一行我输入,这是有点烦人。对不起,我的英语不好。如果你感到困惑,请检查我提供的图像,谢谢。
一对一对一对一。
不管怎样,这是我用来做输出的代码。

#include <stdio.h>

int main(void) {
int t, a, b, c;
scanf("%d", &t);
for (int i = 0; i < t; i++) {
    scanf("%d %d %d", &a, &b, &c);
    if (a + b == c || b + c == a || a + c == b) {
        printf("YES\n");
    }
    else {
        printf("NO\n");
    }
}
    return 0;

}

我试着在YouTube和Google上搜索任何可能的网站,但仍然没有找到任何解决方案

r7knjye2

r7knjye21#

如果你使用代码块来进行竞争性编程,我建议使用带有cph judge扩展的vs代码,这样你就不必每次都写输入了,这也有助于在一次点击中运行所有的测试用例。
在您的情况下,我认为您应该尝试在一个文件中打印输出,我认为您不需要这样做,所以我建议创建一个输出数组,并在代码的最后打印。

#include <stdio.h>
#include <string.h>

int main(void) {
    int t, a, b, c;
    scanf("%d", &t);
    char output[t][4];  //New string array which stores each output
    for (int i = 0; i < t; i++) {
        scanf("%d %d %d", &a, &b, &c);
        if (a + b == c || b + c == a || a + c == b) {
            strcpy(out[i],"YES");
        }
        else {
            strcpy(out[i],"NO");
        }
    }
    for(int i=0;i<t;i++) printf("%s\n",out[i]); //Print at last so you get output in the last
    return 0;
}

现在你的输出将在每个编译器的最后打印。希望它能有所帮助。

相关问题