关于index的输出

来源:6-6 数组的应用(二)

慕妹9780018

2016-10-25 00:15

for(i=0;i<5;i++)    {       /* 请完善数组查询功能 */      if(arr[i]==value)      {         index=i;         break;      }           else{             index=-1;         }  我想问一下,在这个循环里每次都要输出一个index,那样在前面就会有若干个-1的值,等到需要的出现,前面不是已经出来还几个index的值了吗?谢谢大家了

写回答 关注

3回答

  • 没有梦想的咸魚
    2016-10-27 20:04:10
    已采纳

    题主没看清楚代码哦,if语句中如果不满足条件的话,下面的代码块就不执行,而是直接返回到for循环中继续,所以不存在输出若干-1值的情况。

    只有当if语句中所有条件都不满足并且for循环结束之后才会输出-1值;但是只要其中某一个i的值满足if语句,那for循环就立即结束,然后返回index,所以也不存在覆盖的情况。

    慕妹9780...

    非常感谢!

    2016-10-30 20:00:00

    共 1 条回复 >

  • 慕妹9780018
    2016-10-25 15:57:03

    好的,谢谢

  • 盲_4073010
    2016-10-25 13:10:42

    因为是把-1赋值给index,当相等的时候再把i赋值给index,结束时才返回index。所以前面出来的-1给覆盖了

C语言入门

C语言入门视频教程,带你进入编程世界的必修课-C语言

926020 学习 · 20793 问题

查看课程

相似问题