为了账号安全,请及时绑定邮箱和手机立即绑定

每次输入m之后,i总会自动变得比i大1.为什么我的i会自动增大?

每次输入m之后,i总会自动变得比i大1.为什么我的i会自动增大?

C
慕仰7464091 2017-11-09 20:23:09
#include <stdio.h>int main(int argc, char *argv[]){ int b,m,n,x,i,j,z,h=0; scanf("%d",&m); for(i=0;i<=m;i++); { printf("\n+%d+%d+\n",i,m); scanf("%d",&n); int a[n]; for(j=0;j<n;j++) { scanf("%d",&x); a[j]=x; } scanf("%d",&b); for(z=0;z<n;z++) { if(a[z]==b) { printf("%d",z); h=1; } } if(h==0) { printf("Not Found"); }printf("\n+%d+%d+\n",i,m); } return 0;}
查看完整描述

3 回答

已采纳
?
我是小土豆

TA贡献2条经验 获得超0个赞

我知道为啥了,你的for循环后面多了个分号,默认循环体为空了。

查看完整回答
反对 回复 2017-11-14
?
我是小土豆

TA贡献2条经验 获得超0个赞

程序执行之后会出现i=m+1的情况,我也想知道这是为啥,如果找到答案,请告诉我,谢谢!

我自己写的for循环就不会有这个情况:

#include <stdio.h>
int main()
{
     int i,j,k,m;
     scanf("%d",&m);
     for(i=0;i<=m;i++)
     {
          printf("i=%d,m=%d\n",i,m);
     }
     return 0;
}

查看完整回答
反对 回复 2017-11-10
?
慕丝2543519

TA贡献5条经验 获得超0个赞

试试i=0放到输入m 前面?

查看完整回答
反对 回复 2017-11-09
  • 3 回答
  • 0 关注
  • 1562 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信