它在此代码中显示运行时错误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;
}
但是这个问题需要数字&#39; d&#39;由函数返回。 我不知道如何解决错误。 请帮忙。
答案 0 :(得分:2)
NZEC - &gt;非零退出代码。
NZEC是一种机制,用于表示您的代码遇到某种错误,例如内存不足或分段错误错误。
在您的代码中,最后一行执行
return d;
d
在最初分配给0
后会在代码中递增。
由于您的main()
返回值>0
,因此会抛出NZEC error
。
将此更改为
return 0;
解决问题。