欢迎来到装配图网! | 帮助中心 装配图网zhuangpeitu.com!
装配图网
ImageVerifierCode 换一换
首页 装配图网 > 资源分类 > PPT文档下载
 

程序的三种基本结构.ppt

  • 资源ID:16597558       资源大小:394KB        全文页数:24页
  • 资源格式: PPT        下载积分:9.9积分
快捷下载 游客一键下载
会员登录下载
微信登录下载
三方登录下载: 微信开放平台登录 支付宝登录   QQ登录   微博登录  
二维码
微信扫一扫登录
下载资源需要9.9积分
邮箱/手机:
温馨提示:
用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
支付方式: 支付宝    微信支付   
验证码:   换一换

 
账号:
密码:
验证码:   换一换
  忘记密码?
    
友情提示
2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

程序的三种基本结构.ppt

结构化程序设计 基本思想:任何程序都可以用三种基本结构表示,限 制使用无条件转移语句( goto) 结构化程序:由三种基本结构反复嵌套构成的程序叫 优点:结构清晰,易读,提高程序设计质量和效率 三种基本结构 顺序结构 A B A B 流程图 N-S图 程序的三种基本结构 P A B 真 假 P B A 真 假 k A1 A2 Ai An k=k2 k=k1 k=kn k=ki . . 二分支选择结构 多分支选择结构 选择结构 当型循环结构 直到型循环结构 P A 假 真 当 P为真 A A P 真 假 A 直到 P为真 注: A,B,A1.An 可以是一个简单语句,也可以是一个基本结构 循环结构 返回 第 5章 选择语句 5.1 if 条件语句 5.2 switch多分支选择语句 5.3 程序举例 5.1 if条件语句 if语句是用来判定所给定的条件是否满足,根据判定的结果(真或假)决定 执行给出的两种操作之一。 5.1.1 if语句的三种形式 1 单分支选择语句 的形式 : if(表达式) 语句 这种 if语句的执行过程见图 : 0(N) 表达式 语句 1(Y) main( ) float x , y; scanf(“%f ”, if (x=0) y = 2 * x ; if (x < 0) y = 3 - x ; printf(“y= %6.2f”, y ); 任给 a,b,c三个数,按从小到大的顺序输出。 分析: ( 1)对于 a,b任意两个数: 若 a<b,则输出 a , b ; 否则输出 b , a ; ( 2 ) 对于三个数,有 6种可能: a<b<c a<c<b b<a<c b<c<a c<a<b c<bb,则交换 a和 b,交换后 ac,则交换 a和 c,交换后 ac,则交换 b和 c,交换后 bb) temp=a;a=b;b=temp; if(ac) temp=a;a=c;c=temp; if(bc) temp=b;b=c;c=temp; printf(%d,%d,%d,a,b,c); 运行情况如下: 3, 7, 1 1, 3, 7 2双分支选择语句 的形式: if(表达式) 语句 1 else 语句 2 见图 : 表达式 语句 1 语句 2 真 假 main() float x , y; scanf(“%f ”, if ( x b 则输出 a ;否则,输出 b。 #include main( ) float a, b; scanf(“%f, %f”, if (ab) printf (“%f”, a ); else printf (“%f”, b ); 3 多分支选择语句 的形式: if ( 表达式 1) 语句 1 else if ( 表达式 2) 语句 2 else if( 表达式 3) 语句 3 else if ( 表达式 m) 语句 m else 语句 n 流程图 表达式 1 F T 表达式 3 F T 表达式 2 F T 表达式 4 F T 语句 4 语句 5 语句 3 语句 2 语句 1 写一个程序完成下列功能 : 1. 输入一个分数 score 2 .score<60 输出 E 3 .60<=score <70 输出 D 4. 70<=score <80 输出 C 5 .80<=score <90 输出 B 6 .90<=score 输出 A 多分支问题 #include main( ) int score; scanf(“%d”, if ( score<60) printf(“E” ); else if ( score <70) printf(“D” ); else if (score <80) printf(“C” ); else if (score <90) printf(“B” ); else printf(“A” ); 程序 如: if(a=b if(3) printf(“OK”); if(a) printf(“%d”,a); if后面的表达式类型任意 语句可以是复合语句 if(x) if(x!=0) if(!x) if(x=0) 例 考虑下面程序的输出结果 : #include main() int x,y; scanf(“%d,%d”, if(xy) x=y; y=x; else x+; y+; printf(“%d,%dn”,x,y); Compile Error! 说明: 5.1.2 一般形式: if (expr1) if (expr2) statement1 else statement2 else if(expr3) statement3 else statement4 内嵌 if 内嵌 if if (expr1) if (expr2) statement1 else statement2 内嵌 if if (expr1) if (expr2) statement1 else statement3 内嵌 if if (expr1) statement1 else if(expr3) statement3 else statement4 内嵌 if if语句嵌套 /*ch4_4.c*/ #include main() int x,y; printf(Enter integer x,y:); scanf(%d,%d, if(x!=y) if(xy) printf(XYn); else printf(X<Yn); else printf(X=Yn); 运行: Enter integer x,y:12,23 XY Enter integer x,y:12,12 X=Y 例 输入两数并判断其大小关系 缺省 时, else总是和它上面离它最近的未配 对的 if配对 if() if() if() else. else. else. if else 配对原则: 例: if (a=b) if(b=c) printf(“a=b=c”); else printf(“a!=b”); 修改: if (a=b) if(b=c) printf(“a=b=c”); else printf(“a!=b”); 实现 if else 正确配对方法:加 实 现if el se 正 确 配 对 方 法 5.2 switch语句 switch语句是 多分支选择语句 。 if语句只有两个分支可供选择, 而实际问题中常常需要用到多分支的选择。例如,学生成绩分类( 90分 以为 A等, 80 89分为 B等, 70 79分为 c 等, );人口统 计分类(按年龄分为老、中、青、少、儿童);工资统计分类;银行存 款分类; 等。 当然这些都可以用嵌套的 if语句或 多分支 来处理,但 如果分支较多,则嵌套的 if语句层数多,程序冗长而且可读性降低。 C 语言提供 switch语句直接处理多分支选择,它的一般形式如下: switch (表达式) case 常量表达式 1:语句 1 case 常量表达式 2:语句 2 case 常量表达式 i:语句 n default :语句 n+1 首先计算表达式的值,然后依次与常量表达式 i( i=1,2,n )比较。 若表达式的值与某一个常量表达式, 如 j ( 1 j n)相等,则执行语句 j。 若表达式的值与所有的常量表达式 i( i=1,2,n )均不 相等,则执行 defau1t后面的语句 n+1。 功能 语句中的表达式可以是整型或字符型、枚举型。常量表达 式 i 必须与表达式类型一致(整型与字符型通用)。 i 仅 起语句标号作用,不做求值判断。 语句结构中各个 case后常量表达式的值必须互不相同;否 则执行时将出现矛盾。 各个 case的出现次序不影响执行结果。例如,可以先出现caseD: ,然后是 caseA: default一般出现在所有 case之后,也可以出现在 case之 前或两个 case之间 ,default也可以缺省。 为了在执行完一个 case分支后能跳出 switch多分支选择 语句,可在 case分支结束后,插入一个 break语句。若有 break语句,就从此 break语句跳出 break所在的当前结构; 若无 break语句,执行该语句后,流程控制转移到下一个 分支 : 继续执行这一个分支的语句,一直到最后一个语句 执行完。 下一页 注意 switch ( i ) case 1: printf( An); case 3: printf( Cn); case 4: printf( Dn); default: printf( En); 假设 i=3时,则会从 i=3 时做起始语句。 运行结 果见右图。 如果给每条 语句加上 break这样就 只执行一条语句。 C D E 下一页 看下面的例子 运行结果 case 2: printf ( Bn ); 如果多种情况需要共用一个执行语句 ,可 用 case的常量表达式多种情况列出 ,最后 一种情况后 ,才放执行的语句。 case后面的语句可以是一条语句,也可 以是复合语句,还可以是花括弧括起来 的几条语句,还可以是空语句。有多条 语句时会顺序执行完所有语句。 下一页 说明 编程:根据输入的学生的成绩判断等级。 当成绩 score 90时为 A等 ; 成绩 70score <90 为 B等 ; 成绩 60score <70 为 C等 ; 成绩 score < 60 为 D等; (score 为整数 )。 分析 : 设 score为整型数,在 score90 的范围内, score 可能取 100, 99,.,90,利用两个整数相除,结果自动 取整的特性 score score/10 90 10, 9 7089 7 , 8 6069 6 60以下 default score和 score /10 有如下对应关系: 下一页 例 如 因此 ,可以用 score /10的值 来确定分支 #include main( ) /*用 switch 语句评级 */ int score; scanf(%d , switch (score /10) case 10: case 9: printf(%d: An, score);break; case 8: case 7: printf(%d: Bn, score);break; case 6: printf(%d: Cn, score);break; default: printf(%d: Dn, score); 程序 返回

注意事项

本文(程序的三种基本结构.ppt)为本站会员(za****8)主动上传,装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知装配图网(点击联系客服),我们立即给予删除!

温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!