问一下各位,c语言,在dev c++上没有问题,给的测试用例也都能通过,但pta一直显示有错误
#include
int main() {
int i, n, q = 0, a[2][6];
scanf("%d", &n);
for (i = 0; i < n; i++) {
scanf("%d", &a[1][i]);
q = 0;
while (a[1][i]) {
a[0][q] = a[1][i] % 10;
a[1][i] /= 10;
q++;
}
if (a[0][0] + a[0][1] + a[0][2] == a[0][3] + a[0][4] + a[0][5]) {
printf("You are lucky!\n");
} else {
printf("Wish you good luck.\n");
}
}
return 0;
}
供参考:
//一维数组就可以了
#include <stdio.h>
int main() {
int i, n, q = 0, a[6], b; //修改
scanf("%d", &n);
for (i = 0; i < n; i++) {
scanf("%d", &b); //scanf("%d", &a[1][i]);
q = 0;
while (b) { //while (a[1][i])
a[q++] = b % 10; //a[0][q] = a[1][i] % 10;
b /= 10; //a[1][i] /= 10;
//q++;
}
if (a[0] + a[1] + a[2] == a[3] + a[4] + a[5]) {
printf("You are lucky!");
}
else {
printf("Wish you good luck.");
}
if (i != n - 1) //修改 最后一行无换行
printf("\n"); //修改
}
return 0;
}
//二维数组这样改试试
#include <stdio.h>
#define N 101 //修改
int main() {
int i, n, q = 0, a[2][N]; //a[2][6];
scanf("%d", &n);
for (i = 0; i < n; i++) {
scanf("%d", &a[1][i]);
q = 0;
while (a[1][i]) {
a[0][q++] = a[1][i] % 10;
a[1][i] /= 10;
//q++;
}
if (a[0][0] + a[0][1] + a[0][2] == a[0][3] + a[0][4] + a[0][5]) {
printf("You are lucky!");
}
else {
printf("Wish you good luck.");
}
if (i != n - 1) //修改 最后一行无换行
printf("\n"); //修改
}
return 0;
}
a[2][6]想干啥?scanf("%d", &a[1][i]); 当,i大于6不就崩溃了?
根据你提供的代码,我猜测你的问题可能是测试用例中的输入格式不正确,或者你的代码中有一些细节问题。建议你检查一下输入输出格式是否正确,以及是否有边界问题、数组越界等问题。此外,你也可以尝试在本地用一些其他的测试用例进行测试,看看是否能够通过。如果还有问题,可以提供更多的信息,我会尽力帮助你解决问题。
https://cool-js.com/