文档详情

4-2循环结构程序设计.ppt

发布:2017-05-04约字共55页下载文档
文本预览下载声明
4.2.1 while语句 例:分析下列程序段的循环次数 #include stdio.h void main() { int x; scanf( %d ,x); #include stdio.h void main() {char ch;int num=0; ch=getchar(); 4.2.2 do--while语句 例:用do-while语句编写程序统计从键盘输入的一行字符的个数(以回车键作为输入结束标记)。 5.3.3 for语句 for(i=1;i=100;i++) sum=sum+i; 1、for语句中表达式省略的形式 (1)for语句一般形式中的“表达式1”可以省略; 如: sum=0;i=1; for ( ; i=100;i++) sum=sum+i; 1、for语句中表达式省略的形式 (2)表达式2省略,即不判断循环条件,循环无终止地进行下去; 如: for(sum=0,i=1;;i++) { if(i100) break; sum=sum+i; } 1、for语句中表达式省略的形式 (3)表达式3也可以省略,但此时保证循环能正常结束如: for(sum=0,i=1;i=100;) { sum=sum+i; i++; } (4) 可以省略表达式1和表达式3,只有表达式2,如: i=1; sum=0; for (;i=100;) { sum=sum+i; i++; } while (1) 循环体; 即不设初值,不判断条件,循环变量不增值。无终止地执行循环体。 (6)循环体为空语句 对for语句,循环体为空语句的一般形式为: for (表达式1;表达式2;表达式3) ; 如:for(sum=0,i=1;i=100;sum+=i, i++) ; (1)在进入累加前先给累加器赋初值(一般为0); (2)用循环语句实现累加; for(循环变量赋初值;循环条件;循环变量改变规律) (3)循环体语句的设计。 累加器当前值=累加器原值+循环变量当前值 ; 累加器赋初值 (1)给累乘器赋初值,一般为1; (2)用循环语句实现累乘; for(循环变量赋初值;循环条件;循环变量改变规律) (3)循环体设计。 累乘器当前值=累乘器原值*循环变量当前值; 累乘器赋初值 例: 判断一个数是否为素数? #include math.h void main() {int x,k; scanf( %d ,x); #include math.h void main() {int x,k,f=1; scanf( %d ,x); 4.2.4 转移语句 二、break语句 三、continue 语句 #include stdio.h void main() {int a, b; for(a=1,b=1; a=10; a++) {if(b=10) break; if(b%3==1) {b+=3; continue;} } printf(%d\n,a); } 在循环体语句中又包含有另一个完整的循环结构的形式,称为循环的嵌套。如果内循环体中又有嵌套的循环语句,则构成多重循环。 例:输出图形: #include stdio.h void main() { int k1,k2; for(k1=1;k1=4;k1++) { for(k2=4-k1;k2=k1;k2--) putchar(‘ ’); 例:输出100以内的素数。 所谓素数是指只能被1和其本身整除的数。 算法分析:我们先用穷举法来对2~100之间所有的数进行判断。在判断一个数n是否是素数时,我们对n用2~n-1逐个去除,若某次可以整除则说明n不是素数,跳出该层循环。 如果在所有的数都是未除尽的情况下结束循环,则为素数。程序源代码如下: mai
显示全部
相似文档