




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第四章 循环结构,第一节 while语句,一、while语句的一般形式 while语句形式 while(表达式) 循环体语句 ,表达式?,循环体语句,假,真,二、程序设计举例 1、求1+2+3+100之和 #include “stdio.h” main() int i,sum; i=1; sum=0; while(i=100) sum=sum+i; i+; printf(“sum=%d”,sum); ,2、例4.1有以下程序 main() int i,sum=1; i=1; while(i=5) sum=sum*i; i+; printf(“%d”,sum); 程序执行后的输出结果是_ A)1
2、5 B)120 C)5 D)720,B,3、例4.2有以下程序 main() int y=10; while(y-); printf(“y=%dn”,y); 程序执行后的输出结果是_ A)y=0 B)y=-1 C)y=1 D)while构成无限循环,B,练习: 1、计算100以内所有奇数的和 #include “stdio.h” main() int i,sum; i=1; sum=0; while(i=100) sum=sum+i; i+=2; printf(“sum=%d”,sum); ,2、计算s=12310 #include “stdio.h” main() int i; int s;
3、 i=1; s=1; while(i=10) s=s*i; i+; printf(“s=%d”,s); ,3、从键盘输入若干个实数,求它们的和,直到输入一个负数结束循环。,3、从键盘输入若干个实数,求它们的和,直到输入一个负数结束循环。,#include “stdio.h” main() float x,sum; printf(“input real number:”); sum=0; scanf(“%f”, ,x=0,sum=sum+x,scanf(“%f”, count=1; /*count表示数的个数*/ /*odd记录偶数的个数,even记录奇数的个数*/ ; printf(“输入十个
4、整数:n”); while( ) scanf(“%d”, ,count=10,x%2=0,count+,odd=even=0,第二节 do-while语句,一、do-while语句的一般形式 do 循环体语句 while(表达式);,表达式?,循环体语句,假,真,二、举例 1、求1+2+3+100之和 #include “stdio.h” main() int i,sum; i=1; sum=0; do sum=sum+i; i+; while(i=100); printf(“sum=%d”,sum); ,2、例4.3有如下程序 main() int i,n=0; i=0; do i+; +i
5、; while(n!=0); printf(“%d”,i); 程序的输出结果是_ A)0 B)1 C)2 D)死循环,C,第三节 for语句,一、for语句的一般形式 一般形式: for(表达式1;表达式2;表达式3) 循环体 说明: 1、表达式1的作用是给循环变量赋初值; 表达式2的作用是循环的条件; 表达式3的作用是修改循环变量的值。,2、三个表达式都可以省略。 3、分号不可以省略。 4、循环体只有一句语句时可以不加大括号,否则需要加大括号。,二、for语句的执行过程,计算表达式1,计算表达式2,循环体语句,计算表达式3,假,真,例:计算sum=1+2+3+100 #include “st
6、dio.h” main() int i,sum=0; for(i=1;i=100;i+) sum=sum+i; printf(“sum=%d”,sum); ,三、关于for循环的几点说明 1、等价的while循环形式: 表达式1; while(表达式2) 循环体语句; 表达式3; 2、for语句形式的其它写法 (1)i=1; for(;i=100;i+) sum=sum+i;,(2) for(i=1;i=100;) sum=sum+i; i+; (3) i=1; for(;i=100;) sum=sum+i; i+;,(4) for(sum=0,i=1;i=100;i+) sum=sum+i;
7、 (5) for(sum=0,i=1;i=100;sum=sum+i,i+); (6) for(;)相当于while(1)即是永真循环,(改错):1、从键盘上输入10个数,输出它们的平均值 #include “stdio.h” main() int i, x,sum,avg; printf(“input ten numbers:”); for(i=1;i=10;i+) scanf(“%d”, ,#include “stdio.h” main() int i, x,sum=0; float avg; printf(“input ten numbers:”); for(i=1;i=10;i+) s
8、canf(“%d”, ,2、(改错)从键盘输入10个整数,找出其中的最大值 #include “stdio.h” main() int i,x,max; for(i=1;imax) max=x; printf(“max=%dn”,max); ,#include “stdio.h” main() int i,x,max; scanf(“%d”, ,3、编程:从键盘输入10个整数,找出其中的最大值和最小值 #include “stdio.h” main() int i,x,max,min;/*max放最大值,min放最小值*/ scanf(“%d”, ,min=max,i=1;i10;i+,xma
9、x,xmin,4、从键盘输入一个整数,倒序输出 #include “stdio.h” main() int n,c; scanf(“%d”, ,n,c=n%10;,printf(“%d”,c);,一、嵌套的形式 while(表达式1) while(表达式2) ,第四节 循环结构的嵌套,while(表达式) for(表达式1;表达式2;表达式3) ,二、举例 例:输出如下图形 * * * * *,#include “stdio.h” main() int i; for(i=1;i=5;i+) printf(“*n”); ,for(j=1;j=5;j+) printf(“*”); printf(“
10、n”);,#include “stdio.h” main() int i,j; for(i=1;i=5;i+) for(j=1;j=5;j+) printf(“*”); printf(“n”); ,例:有以下程序 main() int i,j,sum=0; for(i=1;i5;i+) for(j=1;j4;j+) sum+; printf(“%d”,sum); 程序的输出结果是_,12,例:求100以内的所有素数 #include “stdio.h” main() int i,j,flag; printf(“2 “); for(i=3;i=100;i+) flag=1; for(j=2;j=
11、i/2;i+) if(i%j=0) flag=0;break; if(flag) printf(“%d “,i); ,练习1:以下程序的输出结果是 。 #include main() int i,j,sum; for(i=3;i=1;i-) sum=0; for(j=1;j=i;j+) sum+=i*j; printf(%dn,sum); ,分析:写出变量的值的变化过程,分析:变量的值的变化过程,最终sum的值为1,练习2:(填空)编程输出如下图形 * * * * *,#include “stdio.h” main() int i,j; for(i=1;i=5;i+) for(j=1; ;j+
12、) printf(“*”); printf(“n”); ,j=i,练习3:计算1+(1+2)+(1+2+3)+(1+2+3+4)+(1+2+100) #include “stdio.h” main() int i,j,sum,temp; sum=0;/*存放总的和*/ for(i=1;i=100;i+) temp=0;/*存放计算过程中每一项的和*/ for(j=1; ;j+) ;/*计算每一项的和*/ ;/*将每一项和加到总的和上*/ printf(“sum=%d”,sum”); ,j=i,temp=temp+j,sum=sum+temp,#include “stdio.h” main()
13、int i,j,sum,temp; sum=0;/*存放总的和*/ temp=0;/*存放计算过程中每一项的和*/ for(i=1;i=100;i+) temp=temp+i;/*计算每一项的和*/ sum=sum+temp;/*将每一项和加到总的和上*/ printf(“sum=%d”,sum”); ,练习4:有以下程序 main( ) int i,j; for(i=1;i4;i+) for(j=i;j4;j+) printf(%d*%d=%d ,i,j,i*j); printf(n); 程序运行后的输出结果是( ) A) 1*1=1 1*2=2 1*3=3 B) 1*1=1 1*2=2 1
14、*3=3 2*1=2 2*2=4 2*2=4 2*3=6 3*1=3 3*3=9 C) 1*1=1 D) 1*1=1 1*2=2 2*2=4 2*1=2 2*2=4 1*3=3 2*3=6 3*3=9 3*1=3 3*2=6 3*3=9,一、break语句 break语句的一般形式为: break; 如: sum=0; for(i=1;i+) if(i100) break; sum=sum+i; 注意:break语句只能出现在switch语句或者循环体中,不能出现在其他地方。,第五节 break语句和continue语句,例:以下程序运行后的输出结果是_ main() int x=15; while(x10 ,16,二、continue语句 continue语句的一般形式: continue; 注意:continue语句只能出现在循环体中
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 电梯困人培训方案
- 初一寒假安全教育主题班会
- 护士入岗前教育
- 读单词游戏设计
- 颐和园说课课件
- 体育运动中烫烧伤防护与处理
- 颈椎的护理课件
- 界面设计风格解析与应用
- 《智能网联汽车技术》课件-自动驾驶等级划分的认知
- 预防流感主题班会课件
- 智能手机使用教程PPT学习课件
- 变速箱厂总平面布置设计设施规划与物流分析课程设计
- NB/T 10756-2021煤矿在用无轨胶轮车安全检测检验规范
- GB/T 31586.2-2015防护涂料体系对钢结构的防腐蚀保护涂层附着力/内聚力(破坏强度)的评定和验收准则第2部分:划格试验和划叉试验
- 2023年上海高考生物真题试卷(答案解析版)
- 临床各科急救流程规范规范图
- 交安工程劳务分包参考价格(范本)
- 2022年专业技术人员继续教育公需课题库(含答案)
- GB∕T 13554-2020 高效空气过滤器
- (新版)孤残儿童试题库(含答案)
- 普通生物学说课(张艳丽)
评论
0/150
提交评论