贴出代码看看
你没有搞清楚for循环的结构,所以你的for循环写错了 for(初始化;循环条件;循环增量)很明显你把第一个初始化和最后的增量弄反了,这就导致了你的循环是个永不退出的死循环了。换成for(b=b;b<=12;b=b+1)就可以了。
两个for 都用i变量来+,所以会有问题的,第二个for完了i直接被加到64了
因为在上面的scanf里面,你输入了4 回车, 4当做数字存进n,回车被当做第一个输入的字符串存进了a[0](其实a[0]是空字符串,因为gets不保存回车符)。解决方法很简单,我们忽略掉4后面那个回车就好了。只要把 scanf("%d",&n);改成 scanf("%d%*c",&n);就行了。 这里%*c的意思是读入一个...
进入了for循环 但是没有符合要求的i,因此没有输出
1、在c文件中是不能在循环里定义变量的(for (int i = 1; i< 4 ; i++))这样编译器会报错,但是.cpp文件可以,c语言不支持循环内定义变量,c++支持这种定义。初学者需要注意一下。2、可以参考下图修改:
大佬们,我的for循..意思就是说在for这个括号里定义i在C99或C11以后才可以用。在工具→编译选项→编译器选项卡中,在"编译时加入以下命令"复选框前打钩,里面输入命令 -std=c99,再尝试编译运
这样的程序当然编译不会有错误了。但注意:for(i=0;i<allm;i++);<-分号?这样一来,for语句与下面{...}就分离开了,也就是空循环。编译程序 允许任意的成对{}。如果你改成:for(i=0;i<allm;i++)<-没有分号 { if(Num[i]==n){I=i;} } 程序就可以运行了。试一试。^0^。你...
for循环是普遍应用与各种计算机语言的一种循环方式。 一般情况下, for循环规则:for(条件一;条件二;条件三) 条件一为满足条件,也就是条件一为1时,进入这个for循环。条件二为循环条件,也就是说当条件二不满足时继续循环。条件三为循环递增条件,里面罗列循环节递增的方式。for循环在实际运行的时候是:首先判断条件一...
原因很简单,你以前的for循环在找到第一个等于n的下标之后没有退出循环,如果Num里面还有后续等于n的下标的话,存在I里面的下标就会被新的覆盖。而你的while循环里面,当遇到第一个等于n的元素的时候循环就退出了,当i<allm的时候,你把下标i的值赋给I,所以I里面存的就是Num里面第一个等于n的元素...