第四讲 控制流顺序结构程序设计 教材:C程序设计导论 1 本讲重点 ? ? ? 了解C语言程序的特点。 C程序的三种基本结构。 能编写简单的顺序结构程序。 2 C程序结构 C程序 源程序文件1 源程序文件2 ... 源程序文件n 预编译命令 函数1 函数n 说明部分 执行部分 (语句) 3 4.1 语句 1、函数调用语句:用于完成一次函数调用。 组成:由一次函数调用+“;”构成。 例:printf(“This is a C statement!”); 2、表达式语句:用于完成一次表达式操作。 组成:由一个表达式+“;”构成。 注:分号是语句的标志。 例:a=3; i+ +;为语句,而a=3 i+ + 是表达式不是语句。 3、空语句:常用作被转向点或循环语句中的循环体。 组成:只由一个“;”构成。 4、复合语句:完成一些特定的操作功能。 组成:将一些语句用{ }括起来构成,在程序中当作一个语句看待。 例:main( ) {… { z=x+y;t=z/100;printf(“%f”,t);} …} 4 4.1 语句 5、控制语句 ?条件语句:if <条件> ~ else ~(或?:) ?循环语句:for ( ) ~ ?条件循环:while ( ){~ } ?条件循环:do {~} while (); ?结束本次循环语句:continue ?中止循环或switch语句:break ?多分支选择语句:switch( ){ case...; ~} ?转向语句:goto ?由函数返回语句:return ? 语句书写要求 C程序书写格式无特殊要求,一行可写多个语句。 习惯遵循:嵌套格式、适当注释语句。 5 4.2 结构化程序设计方法 1、含义:它要求程序设计者按照一定的结构形式来设计和编写程序。 2、引入结构化程序设计方法的原因:使程序易读、易理解、易修改, 以提高程序设计和维护工作的效率。 3、结构化程序的三种基本结构:顺序结构、选择结构、循环结构。 4、结构化程序设计的方法:自顶向下、逐步精化。 6 4.2 结构化程序设计方法 例:求一组正数中的最大者。 求一组正数中的最大者 找出这些数中的 最大的数 打印最大数 使max=0 逐个读入数据, 把最大者送到max中 7 4.2 结构化程序的三种形式 1、顺序结构程序 2、选择结构程序 if~else~选择结构 多分支选择结构(switch) 3、循环结构程序 while( ){ ~ }循环 do{ ~ } while( );循环 for( ){ ~ }循环 8 4.2 顺序结构 1、基本结构 A A B B 2、执行过程:先执行A操作,再执行B操作。 9 4.2 选择结构 1、基本结构: P P Y N Y A N B A B 2、执行过程:当条件P成立时执行A操作,当条件P不成立时 执行B操作。 10 4.2 循环结构-当型循环 当P条件成立时,反复执行A操作,直到P为假时才跳出循环。 N P Y A 当P为真 A 11 4.2 循环结构-直到型循环 先执行A操作,再判断条件P是否成立,若为真,再执行A,直到条 件为假跳出循环。 A A F 直到P为假 P T 12 4.3 顺序结构程序设计 例3.1 计算圆周长和球的体积 分析: 设半径为 r,圆周长为s,球的体积为v,则: s=2*3.1415*r v=3.1415*r*r*r*4.0/3.0 #include #define PI 3.1415 void main(void) { float r,s,v; printf(“ please input r:\n”); scanf(“%f”,&r); s=PI*2*r; v=PI*r*r*r*4.0/3.0 printf(“s=%f,v=%f\n”,s,v); } 13 4.3 顺序结构程序设计 例3.2 输入两个变量取值,并交换两者取值 #include void main(void) { int x,y,z; printf(“ please input x and y:\n”); scanf(“%d%d”,&x,&y); z=x; x=y; y=z; printf(“x=%d,y=%d\n”,x,y); } 14 最简单的程序设计—顺序结构程序 总结: 顺序结构程序中一般不包含控制语句(条件语句、 循环语句、转向语句等),从程序的执行次序来 看,语句按一定顺序依次执行,执行顺序即语句 的书写顺序。 15 THE END 16