呼和浩特职业学院:《C/C++程序设计》课程电子教案(PPT课件)第四章 C程序流程设计

3程敏计 第四章 C程序流程设计
第四章 C程序流程设计

第四章 C程序流程设计 §4.1C语句概述 ★C语句:以“:”作分隔符,编译后产生机器指令 ★C语句分类 》表达式语句:表达式加分号构成。 if()~else~ 如 total=total+limit; 分支 switch a=3; func(); for()~ printf(Hello,world!\n"); 循环 while() do~while() continue break 铺助控制 goto return
第四章 C程序流程设计 §4.1 C语句概述 «C语句:以“;”作分隔符,编译后产生机器指令. «C语句分类 v表达式语句:表达式加分号构成。 v空语句: ; v程序控制语句(9种): if( )~else~ switch for( )~ while( )~ do~while( ) continue break goto return 分支 循环 辅助控制 如 total=total+limit; a=3; func( ); printf(“Hello,world!\n”);

公复合语句:用{.}括起来的一组语句 ●一般形式:{[数据说明部分;] 执行语句部分; ●说明: ◆“”后不加分号 ◆语法上和单一语句相同 ◆复合语句可嵌套
v复合语句:用 {.}括起来的一组语句 l一般形式: { [数据说明部分;] 执行语句部分; } l说明: u“}”后不加分号 u语法上和单一语句相同 u复合语句可嵌套

$42程序的三种基本结构 ★结构化程序设计 基本思想:任何程序都可以用三种基本结构表示,限 制使用无条件转移语句(goto) 结构化程序:由三种基本结构反复嵌套构成的程序叫 公优点:结构清晰,易读, 提高程序设计质量和效率 ★三种基本结构 公顺序结构 A A B B 流程图 N-S图
§4.2 程序的三种基本结构 «结构化程序设计 v基本思想:任何程序都可以用三种基本结构表示,限 制使用无条件转移语句(goto) v结构化程序:由三种基本结构反复嵌套构成的程序叫 ~ v优点:结构清晰,易读,提高程序设计质量和效率 «三种基本结构 v顺序结构 A B A B 流程图 N-S图

$选择结构 假 P 真 假 ●二分支选择结构 B B k k=kn k=kl k-k2 k=ki ●多分支选择结构 Al A2 Ai An
P A B 真 假 P A B 真 假 v选择结构 k A1 A2 Ai An k=k2 k=k1 k=kn k=ki . . l二分支选择结构 l多分支选择结构

循环结构 假 当P为真 ●当型循环结构 A 真 A ●直到型循环结构 A A 假 直到P为真 真 注:A,B,A1.A可以是一个简单语句,也可以是一个基本结构
v循环结构 l当型循环结构 l直到型循环结构 P A 假 真 当P为真 A A P 真 假 A 直到P为真 注:A,B,A1.An可以是一个简单语句,也可以是一个基本结构

S4,3选择型程序设计 ★f语句(条件选择语句) =0 expr f语句的三种形式 非0 ●形式一: statement ◆格式:if(expression) statement ◆执行过程: 例:if(x>y) printf 非0 =0 expr statementl else statementl statement2 statement2 ◆执行过程: 例: if (x>y) max-x, else max-y;
§4.3 选择型程序设计 «if语句(条件选择语句) vif语句的三种形式 l形式一: u格式:if (expression) statement u执行过程: expr statement 非0 =0 例:if (x>y) printf(“%d” ,x); expr statement1 statement2 l形式二: 非0 =0 u格式:if (expression) statement1 else statement2 u执行过程:例:if (x>y) max=x; else max=y;

if expr1 statementl ●形式三: ◆格式: else if (expr2 statement2 else if (expr3 statement3 ◆执行过程: 。. [else statementn =0 例:if(salary>l000) index=0.4; else if(salary>800) index=0.3; else if (salary>600) index=0.2; else if(salary>400) index=0.1; else index=0; statemntl statemnt2 statemnt3 statemntn
l形式三: u格式: if ( expr1 ) statement1 else if (expr2 ) statement2 else if (expr3 ) statement3 . [ else statementn ] expr1 statemnt1 非0 =0 expr2 expr3 statemnt2 statemnt3 statemntn 非0 非0=0 =0 u执行过程: 例:if (salary>1000) index=0.4; else if (salary>800) index=0.3; else if (salary>600) index=0.2; else if (salary>400) index=0.1; else index=0;

●说明: ◆if后面的表达式类型任意 ◆语句可以是复合语句 :ifa==b&:&x=y) printf(“a=b,xy'); if3)printf(OK."); 例考虑下面程序的输出结果 #include main( int xy; scanf(d,%d",&x&y); if(x>y) {x-y;y=x;} Compile Error! else {x+;y+;} printf(%d,%dn”,x,y);
如:if(a==b&&x==y) printf(“a=b,x=y”); if(3) printf(“OK”); if(‘a’) printf(“%d” , ’a’); l说明: uif后面的表达式类型任意 u语句可以是复合语句 u if(x) if(x!=0) if(!x) if(x==0) 例 考虑下面程序的输出结果: #include main() { int x,y; scanf(“%d,%d” ,&x,&y); if(x>y) x=y; y=x; else x++; y++; printf(“%d,%d\n” ,x,y); } Compile Error!

例求一个数的绝对值 /*ch41.c*/ #include main( int x,y, printf("Enter an integer:") scanf("%d",&x); y-X; if(y0) y=-y; printf("\ninteger:%d->absolute value:%d n",x,y); 运行: Enter an integer:-12. integer:-12->absolute value 12
/*ch4_1.c*/ #include main() { int x,y; printf("Enter an integer:"); scanf("%d" ,&x); y=x; if(yabsolute value:%d\n" ,x,y); } 例 求一个数的绝对值 运行:Enter an integer:-12 integer:-12->absolute value :12
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- 呼和浩特职业学院:《C/C++程序设计》课程电子教案(PPT课件)第六章 函数.pps
- 呼和浩特职业学院:《C/C++程序设计》课程电子教案(PPT课件)第五章 数组.pps
- 呼和浩特职业学院:《C/C++程序设计》课程电子教案(PPT课件)第七章 指针.pps
- 呼和浩特职业学院:《C/C++程序设计》课程电子教案(PPT课件)第二章 顺序结构程序设计.pps
- 呼和浩特职业学院:《C/C++程序设计》课程电子教案(PPT课件)第三章 数据输入与输出.pps
- 呼和浩特职业学院:《C/C++程序设计》课程电子教案(PPT课件)第一章 程序的灵魂-算法.pps
- 呼和浩特职业学院:《C/C++程序设计》课程电子教案(PPT课件)第一章 C语言概述(授课教师:张媛).pps
- 呼和浩特职业学院:《C/C++程序设计》课程教学资源(各章习题)第十章 位运算(答案).doc
- 呼和浩特职业学院:《C/C++程序设计》课程教学资源(各章习题)第十章 位运算(试题).doc
- 呼和浩特职业学院:《C/C++程序设计》课程教学资源(各章习题)第九章 结构体与共用体(答案).doc
- 呼和浩特职业学院:《C/C++程序设计》课程教学资源(各章习题)第八章 指针(答案).doc
- 呼和浩特职业学院:《C/C++程序设计》课程教学资源(各章习题)第九章 结构体与共用体(试题).doc
- 呼和浩特职业学院:《C/C++程序设计》课程教学资源(各章习题)第八章 指针(试题).doc
- 呼和浩特职业学院:《C/C++程序设计》课程教学资源(各章习题)第七章(答案).doc
- 呼和浩特职业学院:《C/C++程序设计》课程教学资源(各章习题)第七章(试题).doc
- 呼和浩特职业学院:《C/C++程序设计》课程教学资源(各章习题)第六章(答案).doc
- 呼和浩特职业学院:《C/C++程序设计》课程教学资源(各章习题)第六章(试题).doc
- 呼和浩特职业学院:《C/C++程序设计》课程教学资源(各章习题)第五章 循环结构程序设计(答案).doc
- 呼和浩特职业学院:《C/C++程序设计》课程教学资源(各章习题)第五章 循环结构程序设计(试题).doc
- 呼和浩特职业学院:《C/C++程序设计》课程教学资源(各章习题)第四章 选择结构程序设计(答案).doc
- 清华大学:《C语言程序设计》课程PPT教学课件(谭浩强教材第二版,共七章).ppt
- 《C语言程序设计》课程授课教案(PPT教学课件)第一章 C语言概论.ppt
- 《C语言程序设计》课程授课教案(PPT教学课件)第七章 函数.ppt
- 《C语言程序设计》课程授课教案(PPT教学课件)第三章 最简单的C.ppt
- 《C语言程序设计》课程授课教案(PPT教学课件)第二章 数据类型、运算符及表达式.ppt
- 《C语言程序设计》课程授课教案(PPT教学课件)第五章 循环结构.ppt
- 《C语言程序设计》课程授课教案(PPT教学课件)第八章 编译预处理、第九章 指针、第十章 结构体、共用体及枚举类型、第十一章 文件.ppt
- 《C语言程序设计》课程授课教案(PPT教学课件)第六章 数组.ppt
- 《C语言程序设计》课程授课教案(PPT教学课件)第四章 选择结构.ppt
- 《C语言程序设计》课程教学课件(PPT讲稿)第一章 C语言概述、算法介绍.ppt
- 《C语言程序设计》课程教学课件(PPT讲稿)第二章 数据类型、运算符与表达式、位运算.ppt
- 《C语言程序设计》课程教学课件(PPT讲稿)第三章 程序控制流.ppt
- 《C语言程序设计》课程教学课件(PPT讲稿)第五章 函数及预处理.ppt
- 《C语言程序设计》课程教学课件(PPT讲稿)第八章 文件.ppt
- 《C语言程序设计》课程教学课件(PPT讲稿)第六章 指针.ppt
- 《C语言程序设计》课程教学课件(PPT讲稿)第四章 数组.ppt
- 《C语言程序设计》课程教学课件(PPT讲稿)第七章 结构体与共用体.ppt
- 《C语言程序设计》课程教学课件(PPT讲稿)第01章 C语言概述.ppt
- 《C语言程序设计》课程教学课件(PPT讲稿)第02章 数据类型、运算符与表达式.ppt
- 《C语言程序设计》课程教学课件(PPT讲稿)第03章 顺序结构程序设计.ppt