课程
/后端开发
/C
/C语言入门
for(i=0;i<5;i++) { /* 请完善数组查询功能 */ if(arr[i]==value) { index=i; break; } else{ index=-1; } 我想问一下,在这个循环里每次都要输出一个index,那样在前面就会有若干个-1的值,等到需要的出现,前面不是已经出来还几个index的值了吗?谢谢大家了
2016-10-25
源自:C语言入门 6-6
正在回答
题主没看清楚代码哦,if语句中如果不满足条件的话,下面的代码块就不执行,而是直接返回到for循环中继续,所以不存在输出若干-1值的情况。
只有当if语句中所有条件都不满足并且for循环结束之后才会输出-1值;但是只要其中某一个i的值满足if语句,那for循环就立即结束,然后返回index,所以也不存在覆盖的情况。
慕妹9780018 提问者
好的,谢谢
因为是把-1赋值给index,当相等的时候再把i赋值给index,结束时才返回index。所以前面出来的-1给覆盖了
举报
C语言入门视频教程,带你进入编程世界的必修课-C语言
5 回答关于index
4 回答关于index !=-1
3 回答关于输出的字符
2 回答图中的index有问题吧,输出index不对
1 回答关于最后的输出