‘壹’ c语言中for循环怎么理解
for循环是编程语言中一种开界的循环语句,而循环语句由循环体及循环的终止条件两部分组成,for循环一般形式为:for(单次表达式;条件表达式;末尾循环体){中间循环体;}。
执行的中间循环体可以为一个语句,也可以为多个语句,当中间循环体只有一个语句时,其大括号{}可以省略,执行完中间循环体后接着执行末尾循环体 。执行末尾循环体后将再次进行条件判断,若条件还成立,则继续重复上述循环,当条件不成立时则跳出当下for循环。
for循环实例:
# include <stdio.h>
int main(void)
{int n = 0;
int i = 0;
int m = 1;
int sum=0;
printf("请输入n的值:");
scanf("%d", &n);
for (i=1; i<=n; ++i){
m = m * i;
sum = sum +m;}
printf ("sum = %d ", sum);
return 0;}
假如 n=4,当 i=1 时,m=1,sum=1。当 i=2 时,m=1×2,sum=1+1×2。当 i=3 时,m=1×2×3,sum=1+1×2+1×2×3。当 i=4 时,m=1×2×3×4sum=1+1×2+1×2×3+1×2×3×4。
(1)c语言for循环的疑惑扩展阅读
for循环注意事项:
1、for循环的代码不仅可以写一句,也可以写多句(保证第二部分的返回值是布尔值)
2、for循环的三个部分都可以省略。第一部分省略表示不初始化;第二部分省略表示不判断,默认值为true;第三部分省略表示省略后什么也不执行。
3、小循环在外,大循环在内、
4、如果for循环有条件判断,可以将条件放到for循环外。
5、for循环中的"单次表达式"、"条件表达式"和"循环体语句"都是选择项, 即可以缺省成只剩下“;”的空语句, ";"不能缺省的原因是编译格式如此,缺省了编译器不认识而会报错。
‘贰’ C语言中循环语句for的疑惑
分类: 电脑/网络 >> 程序设计 >> 其他编程语言
问题描述:
for(i=0;i<3;i++)
{
for(j=0;j<5;j++)
{ scanf("%d",&a[j][i]);
s=s+a[j][i];}
v[i]=s/5;
s=0;
}
对于这种双循环语句程序是如何执行的?
for(i=0;i<3;i++)先判断i是否<3(一定<3),是则专向下一条for(j=0;j<5;j++),这时又要判断当j<5,j<5转向 scanf("%d",&a[j][i]);及后面的程序,那么后面的执行完后对j+1再来判断一直到j<5为条件非,才停止执行后面程序。
问题来了,第一句的for(i=0;i<3;i++)是不是要到后面的for(j=0;j<5;j++)全部的循环完后才它才进行第二次循环?还有一个问题就是我上面这样叙述它的过程对不对?
解析:
你写的挺多 我没看 反正你就记住了 先执行内循环 然后执行外循环就行了 先执行内循环 一次内循环执行完了 才能轮到外循环
‘叁’ c语言 for循环的疑惑
n可能为全局变量,问题不在这儿,找全程序的问题。
‘肆’ C语言for循环的问题
因为i等于n的时候是从一开始加的儿,i等于n加一的时候是从n加一,也就是二开始加的
‘伍’ c语言中 for循环的问题
可以在出了这个循环后的另一个for循环中重复使用
这是没有问题的。
第一个循环之后,i是9
但第二个for循环的首语句重新定义了i=1,没有问题,只要i是有效使用范围(作用域)。
请采纳答案,支持我一下。
‘陆’ C语言中的for循环,我怎么不懂看了很多遍了!
for语句的一般格式:for(初始条件;结束条件;循环变量的增值){循环的语句。。。。}
其中的循环变量的增量,可以放到循环语句里面去。
例如:求1+2+3+。。。+100
#include
void
mian
(){
int
i=0,s=0;
for(i=1;i<=100;i++){
s+=i;
}
printf("s=%d",s);
}
求采纳
‘柒’ 初学C语言。关于for循环的疑问
int n,i;
for(i=1;i<=5;i++) //这是绘画它的框架,因为有五行,所以i从1到5,
相当于纵坐标
{ //如果你懂循环的顺序的话,就会很容易写出代码
for(n=1;n<=i;n++) //这是为了将*号输出
{
printf(" * ");
}
printf("\n"); //这是在一次循环结束后,即每一行*号输出后,执行换行处理,代表着外部循 环的一次结束
}
X/=10 就是 X=X/10的缩写 除号换成“+”,“-”,“*”都是一样的。
‘捌’ C语言中for语句的疑惑:为什么只有把赋值语句放在for语句中才能正确执行而在定义时赋值却只出现部分结果
你这是三层嵌套循环,第二层循环j的值每次从0增加到9,第三层循环k的值每次从2到9。
程序1:当i=1,j=0,for(;k<=9;++k)执行完后,输出103,k的值变为10。++j后,什么也没执行,因为k>9,不能执行for(;k<=9;++k)。同样for(;j<=9;++j)执行完后j就变为10。每次循环j,k都要重新赋值的。
外层循环可以这样写for(;i<=2;++i)
不知道说清楚了没~
‘玖’ 关于C语言中FOR循环的问题
for语句没有循环次数的限制,完全可以无限制循环往复,甚至无限循环有很多有用的用途。
你遇到的情况或许是由于其他原因造成的,可以细读代码寻找缘由。