资源描述:
《三、C语言的结构化程序设计》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、三、C语言的结构化程序设计学习目标熟练掌握C语言的逻辑判断结构。熟练掌握if语句的用法。熟练各种循环的用法。按要求完成课后练习。2程序设计的方法程序设计的两大要素程序=算法+数据结构算法:求解问题的方法和步骤;数据结构:数据元素及各元素之间的关系;说明:高级语言的数据结构是以数据类型来体现的。算法的表示方法:1)自然语言2)传统流程图3)N-S结构化流程图(美国I.Nassi(奈斯)和B.Schneiderman(斯奈德曼)两人在1973年提出的方法)结构化程序设计的三种基本结构:1)顺序结构2)选择结构3)循环结构3ABAB开始结束NS图:A、B为操作框,可由一条或多条语句实现。顺序结构传
2、统流程图与N-S流程图的区别:传统流程图——流程线可向前或向后随意转移;N-S流程图——从画法上取消了流程线,杜绝了基本结构之间的转移,提高了算法的可靠性。4传统流程图N-S流程图入口出口ABPPABTFTF其中:P为分支判断条件;A、B必有一个且只有一个被执行;A、B之一可是空操作,用表示。选择结构(分支结构)5当型循环——先判断后循环,有可能一次也不循环。入口FTPA当P为真A出口其中:P为循环判断条件;A为要重复执行的操作,称为循环体;循环结构6if语句的三种形式单路分支:条件成立执行操作,不成立什么也不做;双路分支:条件成立执行A操作,不成立执行B操作;嵌套分支:条件成立执行A操作
3、,不成立时还需要进一步进行分支判断。选择结构--if分支控制语句7第一种形式——单路分支if(表达式)语句内嵌语句;可是一条语句、复合语句、空语句。描述了条件成立时要执行的操作。可是任何形式的表达式;通常是关系或逻辑表达式。描述了分支控制条件。选择结构--if分支控制语句执行流程:首先求解表达式,并对其值进行逻辑判断;非零视为真,执行内嵌语句,之后执行后续语句。若分支条件不成立,则直接执行后续语句。对应算法:PTF内嵌语句8例:输入一个整数,为正则输出main(){intx;scanf(”%d”,&x);if(x>0)printf(”%d”,x);}例:输入两个数并按由小到大顺序输出
4、课堂练习main(){floata,b,t;scanf(”%f,%f”,&a,&b);if(a>b){t=a;a=b;b=t;}printf(”%f,%f”,a,b);}9第二种形式——双路分支if(表达式)语句1else语句2其中:内嵌语句1是条件成立时所执行的操作;内嵌语句2是条件不成立时所执行的操作;执行流程:首先求解表达式,并对其值进行逻辑判断;为真,执行内嵌语句1,之后执行后续语句。若分支条件不成立,则执行内嵌语句2,之后执行后续语句。选择结构--if分支控制语句PTF内嵌内嵌语句1语句210例:根据x求y值y=main(){floatx,y;scanf(”%f”,&x);if
5、(x>=0){y=x;printf(”y=%f”,y);}else{y=x*x+1.0;printf(”y=%f”,y);}}xx≥0x2+1x<0课堂练习思考:这是最优写法吗?11第三种形式——阶梯if(不成立时嵌套分支)if(e1)s1elseif(e2)s2elseif(e3)s3┇elseif(em)smelsesn其中:ei各层的分支条件;si各层的内嵌语句;执行流程:首先计算并判断e1的值,为真执行s1,之后退出分支。e1为假则计算并判断e2的值,为真执行s2,之后退出分支。依次类推。e1e2TFTFTFs1s2s3s4e3选择结构--if分支控制语句12例:输入学生成绩
6、,按右图对学生成绩分档;80~100分A档70~79分B档60~69分C档0~59分D档课堂练习main(){intg;printf(”Enterscore:”);scanf(”%d”,&g);if(g<0
7、
8、g>100)printf(”INPUTERROR!”);elseif(g>=80)printf(”A”);elseif(g>=70)printf(”B”);elseif(g>=60)printf(”C”);elseprintf(”D”);}用单路分支实现main(){intg;printf(”Enterscore:”);scanf(”%d”,&g);if(g<0
9、
10、g>100)prin
11、tf(”INPUTERROR!”);if(g>=80&&g<=100)printf(”A”);if(g>=70&&g<=79)printf(”B”);if(g>=60&&g<=69)printf(”C”);if(g>=0&&g<=59)printf(”D”);}多个并列if语句,执行效率不如阶梯if。132.if的嵌套在一个分支结构中,又完整地包含一个或多个分支结构,则构成了分支结构的嵌套。算法表示:算法实现