int moveup(int num[9]){//空格上移
for(int i=0;i<9;i++)
if(num[i]==0) break;
if(i<3) return 0;
else {
num[i]=num[i-3];
num[i-3]=0;
return 1;
}
}
为什么在第四行报错“i”: 未声明的标识符
求高人指点??
int moveup(int num[9]){//空格上移
for(int i=0;i<9;i++)
if(num[i]==0) break;
int i;
if(i<3) return 0;
else {
num[i]=num[i-3];
num[i-3]=0;
return 1;
}
}改成这样后有个警告: warning C4700: 使用了未初始化的局部变量“i”
求解。。
这说明你还是没有理解C语言的标准。
C语言要求所有变量的定义必须在所有程序语句的执行前面一次性定义,除非使用你所用的局部变量。你把它提到for循环之前。
至于你将来遇到的局部变量同名的问题,你再慢慢解决吧。