codechef 上 C 代码中的 NZEC 错误

NZEC error in C code on codechef

在这段代码中显示运行时错误 NZEC。

#include<stdio.h>
#include<stdlib.h>

int main ()
{
int i,d=0,x;
char buffer [256];
//printf ("Enter a number: ");
scanf("%s",buffer);

i = atoi (buffer);
while(i>0)
{
x=i%10;
i=i/10;
switch(x)
{
case 0:d=d+6;
break;
case 1:d=d+2;
break;
case 2: d=d+5;
break;
case 3: d=d+5;
break;
case 4: d=d+4;
break;
case 5: d=d+5;
break;
case 6: d=d+6;
break;
case 7: d=d+3;
break;
case 8: d=d+7;
break;
case 9: d=d+6;
break;
}
}
//printf("The no of dashes are :");
//printf("%d",d);

return d;
} 

但问题要求函数返回数字 'd'。 我不知道如何解决该错误。 请帮忙

BTW This is the problem statement

NZEC -> non zero exit code.

NZEC 是一种机制,用于指示您的代码 运行 出现某种错误,例如内存不足或分段错误。

在您的代码中,最后一行执行

return d;

d 在初始分配给 0 之后在代码中递增。

由于你的 main() returns 值 >0,它正在抛出 NZEC error

将此更改为

return 0;

解决问题。