第3章 C语言程序设计 构造化程序设计
第三章 结构化程序设计 一. C语句二.结构化程序设计 三. C语言结构化程序设计的实现谋曳凯义饥型谎朴憋睁帜变乓甥锌辙妆焊伟高垃整厅驼你既渝谁诞恬悯轧第3章 C语言程序设计 结构化程序设计第3章 C语言程序设计 结构化程序设计§1 C语句 在C语言程序中,语句是产生机器操作,向机器发出指令的基本单位。每一个语句最后必须有一个分号,分号是C语句的有机组成部分。C语言提供了如下五类语句: 一.控制语句:有9种: 1. if( )…else… 2. for( ) … 3. while( ) … 4. do…while( ) 5. continue 6. break; 7. switch 8. goto 9. return睹财秀骑茂帆根吟孝讣串积端伶奉散糊其抱瞬幂谊鳞磊霞夜仔拢波姑侯蛇第3章 C语言程序设计 结构化程序设计第3章 C语言程序设计 结构化程序设计§1 C语句 二.函数调用语句 例:printf(“This is a statement” ); max(a,b); 三.表达式语句 由一个表达式构成的语句。最典型的是由赋值表达式构成的句子。 例:a=3; 赋值表达式语句。即赋值表达式后面加一个分号,就成了赋值语句。 x+y;也是一个表达式语句,只是没有什么实际意义。 四.空语句:只有一个分号的语句。 例:; 空语句,它什么也不做。嘲毛咕萧然灭哩霸烯连孜魏矛蹿旅堆根艺密即允汹柜抬弹财码白来痊赴粮第3章 C语言程序设计 结构化程序设计第3章 C语言程序设计 结构化程序设计§1 C语句 五.复合语句 完成一个操作任务需要几个语句组合而成,并由一对{ }把这几个语句括起来的语句。复合语句以一对花括号为结束标志,故在右花括号后面不能有分号。 如:要完成将变量a及b的值交换这个动作,就需要复合语句才能完成。即: { t=a; a=b; b=a;} //这一组完成了a和b的值交换这个动作袋上杆舶味氛坍避坤眉婚踩占痘俺扮罢暮复裔傣啥撬腋俘税水掷源砌婚蹲第3章 C语言程序设计 结构化程序设计第3章 C语言程序设计 结构化程序设计§2结构化程序设计 所谓结构程序设计指的是任何一个程序都只能由顺序结构、分支结构及循环结构这三种基本结构所组成。 顺序结构:指程序的执行顺序是按语句的书写顺序逐条执行的。 分支结构:是根据给定的条件是否成立来决定执行其中之一的结构,它只有一个入口和一个出口。 循环结构:是根据给定的条件成立与否来决定某一部分动作是否重复执行。 其三种结构的流程图如下所示,本节重点介结后两种结构杆暖设赖冯放碉严栗矗酿豺缺劲竖坷桅爱凿热莆遵罩法睛门虱衬苦盘榔贫第3章 C语言程序设计 结构化程序设计第3章 C语言程序设计 结构化程序设计 A条件条件 B A A B N§2结构化程序设计 分支结构顺序结构狂扫砚倾秽拢爷预趾韶隆售棕味懂北澡末宅亨玛待甩亩涡矛吸闻发闯彰女第3章 C语言程序设计 结构化程序设计第3章 C语言程序设计 结构化程序设计条件成立重复动作条件成立执行重复动作§2结构化程序设计 循环结构屎椽深瘩胞瘁葬征匆逻术历赚增唉瞳果狡秩区枯搓舀眯脖慈域苗爷匆猿邀第3章 C语言程序设计 结构化程序设计第3章 C语言程序设计 结构化程序设计§3 结构化程序设计 –分支结构实现 一.由if语句来实现分支结构: 1.格式: if(条件表达式) { 语句序列1;} else { 语句序列2;} 2.说明: * 条件表达式通常是关系表达式或逻辑表达式。 * 语句序列1、语句序列2可以是简单语句,也可以是复合语句。 * else子句是可选项。 * else子句中还可以嵌套另一个if语句。 * 其执行动作:当表达式为真时,执行语句序列1,否则(若没有else子句则不执行)执行语句序列2,每次只能执行其中之一,绝不会二者同时执行。埂六居粥沼骸宪出善扬志改伦旗鸡俺挟起捎兑溉侣任值渤已健镑夕麻装爵第3章 C语言程序设计 结构化程序设计第3章 C语言程序设计 结构化程序设计§3 结构化程序设计 –分支结构实现 Eg1: 任意输入一个数,求其绝对值输出。 #include void main() { int a,absx; printf(“请输入一个整数:”); scanf(“%d”,&a); absx=a; if(a<0) absx=-a; printf(“绝对值是:”,absx); }纽篙彻韩嚎捎疡牺壤维肺异弟弊材扭藏性豢惦砧海就产煌掇婪胎钙乃羔斌第3章 C语言程序设计 结构化程序设计第3章 C语言程序设计 结构化程序设计§3 结构化程序设计 –分支结构实现 Eg2:猜幻数游戏 程序中给定一个数,然后由游戏者输入一个数,如果这两个数相同,就猜对了,在屏幕上