循环、判断的使用
在程序设计中需要对重复执行的操作采用循环进行处理。当条件满足时执行循环操作,知道条件不满足时跳出循环。 2.1常见的循环结构有while,do…..while以及for循环。 (1)while语句的一般形式: while(表达式) { 语句1; 语句2; . …..语句n; }
当表达式的值为真或者非零时,执行循环语句。 (2)do….while语句的一般形式: do { 语句 }
while(表达式)
do…while语句构成的循环,即先执行循环语句,知道条件不满足时跳出。
do…while和while的区别在于:do…while是先执行语句,再判
断条件,不管条件是否成立,它至少执行一次循环;而while是先判断条件,再执行语句。 (3)for语句的一般形式:
for(表达式1;表达式2;表达式3) 语句
它的执行过程如下: 1 计算表达式1。
2 计算表达式2,判断是否为真,假如表达式2为真,执行语句,否则结束循环。 3执行语句。
4计算表达式3的值,转向步骤2。 5结束循环。
注:在for循环中,表达式可以进行省略,例如:
#include \void main() {
int i=1,sum=0; for(;i<=100;i++) {
sum+=i; }
printf(\}
For循环还有许多使用技巧
(1) 如果表达式2可以省略,即不判断循环条件,循环无终止地进
行下去。
for(i=1; ;i++) sum=sum+i;
(2) 表达式3也可以省略,但程序设计者应另外设法保证循环能正
常结束。 for(i=1;i<=100;) {
sum=sum+i; i++; }
(3) 可以省略表达式1和表达式3,只有表达式2。
for(;i<=100;) {
sum=sum+I; i++; }
(4) 3个表达式都可省略,即无终止的执行循环。
for( ; ; )
(5) 表达式1可以是设置循环变量初值的赋值表达式,也可以是与
循环变量无关的其他表达式。 for(sum=0;i<=100;i++) sum=sum+I;
(6) 表达式为一般的关系表达式或逻辑表达式,但也可以是字符
表达式,只要其非零,就执行循环体。 for(i=0;(c=getchar())!=’\\n’;i+=c) printf(“%d”,c);
从上面可以看出,for语句比其它循环语句功能强得多,可以把循
环体和一些与循环控制无关的操作当做表达式,程序虽然简洁,但是程序的可读性低。所以我们在使用for语句时,尽量在表达式中写与循环控制有关的表达式。 书名 《C语言程序设计》
作者 张书云 姜淑菊 朱雷
P57-P63
书名 《C++程序设计》
作者 谭浩强 P74-P79
2.2 判断
程序运行过程中,根据不同的条件去执行不同的语句,常见的判断语句有if….else 、switch等。 (1) if语句的一般形式
If(表达式) 语句1 Else if(表达式) 语句2 ….
Else 语句 n
(2)switch语句的一般形式 Switch(表达式)
{
Case 常量表达式1: 语句1;break; Case 常量表达式2: 语句2;break; Case 常量表达式3: 语句3;break; ……. Default : 语句 n+1; break;
}
例:通过switch,制作一个简单的计算器
int mennue() {