《程序控制结构》PPT课件.ppt_第1页
《程序控制结构》PPT课件.ppt_第2页
《程序控制结构》PPT课件.ppt_第3页
《程序控制结构》PPT课件.ppt_第4页
《程序控制结构》PPT课件.ppt_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第3章 C语言程序控制结构,三种基本结构:顺序结构、分支结构、循环结构,(a)顺序结构 (b)选择结构 (c)循环结构,图3.1 三种基本控制结构流程图,(1) 第一种形式为基本形式: if (表达式) 语句;,输入两个整数,输出其中的较大数 void main( ) int a,b,max; printf(n input two numbers: ); scanf(%d%d, else 语句n;,void main( ) char c; printf(input a character: ); c=getchar( ); if(c=0 if(ab) t=a;a=b;bt; printf(”a

2、=%d,b=%d”,a,b); 和 if(ab) ta;ab;bt; printf(”ad,bd”,a,b);,请问: 1.两段程序有什么区别? 2.其执行结果有什么不同?,a=1,b=3,a=3,b=?,3.2.1 switch语句(不带break语句)一般形式为:,switch(表达式) case 常量表达式1: 语句1; case 常量表达式2: 语句2; . case 常量表达式n: 语句n; default : 语句n+1; ,例3.7 从键盘输入一个数字,则输出一个英文单词。 void main( ) int a; printf(input integer number: ); s

3、canf(%d,n=100;n+) s=s+n; printf(s=%dn,s); ,3.3 for 语 句,3.3.2 for语句使用注意事项,for语句中的各表达式都可省略,但分号间隔符不能少。 1)for(;表达式;表达式)省去了表达式1。(见课本P.35例3.11) 2)for(表达式;表达式)省去了表达式2。(将造成无限循环) 3)for(表达式;表达式;)省去了表达式3。(见课本P.36例3.12) 4)for(;)省去了全部表达式。 (见课本P.36例3.13),循环体可以是空语句。,例3.14 #include void main( ) int n=0; printf(inpu

4、t a string:n); for(;getchar()!=n;n+); printf(%d,n); ,1*1= 1 2*1= 2 2*2= 4 3*1= 3 3*2= 6 3*3= 9 4*1= 4 4*2= 8 4*3=12 4*4=16 5*1= 5 5*2=10 5*3=15 5*4=20 5*5=25 6*1= 6 6*2=12 6*3=18 6*4=24 6*5=30 6*6=36,3.4 while语句,3.4.1 while语句的一般形式,While循环计算1加到100 main() int n=1,s=0; while(n=100) s=s+n;n+; printf(“s=

5、%d”,s); ,3.4.2 while语句使用注意事项,循环体如包括有一个以上的语句,则必须用 括起来,组成复合语句。,应注意循环条件的选择以避免死循环。,允许while语句的循环体又是while语句、for语句或do-while语句,从而形成多重循环(循环的嵌套使用参见3.5节)。,while语句中的表达式一般是关系表达或逻辑表达式,只要表达式的值为真(非0)即可继续循环。,例3.18 main( ) int a=0; while(a=5) printf(%d ,a+); ,3.5 do-while语句,3.5.1 do-while语句的一般形式,do-while循环计算1加到100 ma

6、in() int n=1,s=0; do s=s+n; n+; while(n=100); printf(“s=%d”,s); ,3.5.2 do-while语句使用注意事项,在if语句,while语句中,表达式后面都不能加分号,而在 do-while语句的表达式后面则必须加分号。, do-while和while语句相互替换时,要注意修改循环控制条件。,在do和while之间的循环体由多个语句组成时,也必须用 括起来组成一个复合语句。,do-while语句也可与while、for语句相互嵌套,构成多重循环。以下结构都是合法的嵌套。,4种转移语句: break、continue、return和goto。,例3.20 输出100以内能被7整除的数。void main( ) int n; for(n=7;n=100;n+) if (n%7!=0) continue; printf(%d ,n); ,3.6程序转移控制语句,例:break的使用 void main( ) int n; for(n=7;n=100;n+) if (n%7!=0) break; printf(%d ,n); ,例:continue和break的使用

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论