正确理解for语句

[接招看题030] 求1~100的累计和。
/程序功能:求1~100的累计和/
在这里插入图片描述
帮你节约时间的源代码:
main()
{ int i,sum=0; /将累加器sum初始化为0/
for(i=1; i<=100; i++) sum += i; /实现累加/
printf(“sum=%d\n”,sum);
}
**目前已写完30个完整且正确的C语言实例代码:第三十一个走起!
[接招看题031] 求n的阶乘n!(n!=1
2
……*n)。
/程序功能:求n!/
在这里插入图片描述

帮你节约时间的源代码
main()
{ int i, n;
long fact=1; /将累乘器fact初始化为1/
printf(“Input n: “); scanf(”%d”, &n);
for(i=1; i<=n; i++) fact *= i; /实现累乘/
printf("%d ! = %ld\n", n, fact);
}
内功心法修炼:
在3条循环语句中,for语句最为灵活,不仅可用于循环次数已经确定的情况,也可用于循环次数虽不确定、但给出了循环继续条件的情况。

1.for语句的一般格式
for([变量赋初值];[循环继续条件];[循环变量增值])
{ 循环体语句组;}
2.for语句的执行过程
执行过程:
(1)求解"变量赋初值"表达式。
(2)求解"循环继续条件"表达式。如果其值非0,执行(3);否则,转至(4)。
(3)执行循环体语句组,并求解"循环变量增值"表达式,然后转向(2)。
(4)执行for语句的下一条语句。
3.说明
(1)“变量赋初值”、"循环继续条件"和"循环变量增值"部分均可缺省,甚至全部缺省,但其间的分号不能省略。
(2)当循环体语句组仅由一条语句构成时,可以不使用复合语句形式,如上例所示。当然,建议用复合语句,这是考验一个码农细心与否哦。
(3)"循环变量赋初值"表达式,既可以是给循环变量赋初值的赋值表达式,也可以是与此无关的其它表达式(如逗号表达式)。
例如,for(sum=0;i<=100;i++) sum += i;
for(sum=0,i=1;i<=100;i++) sum += i;
(4)"循环继续条件"部分是一个逻辑量,除一般的关系(或逻辑)表达式外,也允许是数值(或字符)表达式。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章