面试题
以下是一段程序有什么错误
int data[10];
{for(unsigned int i=0;i<10:i++)
printf ("%d",data[i]);}
{for(unsigned int i=10-1;i>0:i--)
printf("%d",data[i]);}
以下是一段程序有什么错误
int data[10];
{for(unsigned int i=0;i<10:i++)
printf ("%d",data[i]);}
{for(unsigned int i=10-1;i>0:i--)
printf("%d",data[i]);}
这样的代码在C++里面是允许的,C99新标准说不定也允许。
但是在C89标准下就错啦。按最小改动原则,应为
int data[10];
{ unsigned int i;
for(i=0;i<10;i++)
printf ("%d",data[i]);
}
{ unsigned int i;
for(i=10-1;i>0;i--)
printf("%d",data[i]);
}
[此贴子已经被作者于2006-6-29 8:35:07编辑过]