C语言程序设计-2设计.ppt
《C语言程序设计-2设计.ppt》由会员分享,可在线阅读,更多相关《C语言程序设计-2设计.ppt(78页珍藏版)》请在三一办公上搜索。
1、,C语言程序设计-2设计,4.分支程序设计计算行李托运费5.复杂分支程序设计字符菜单6.循环程序设计小学加减法练习,C语言程序设计,项目四 分支程序设计计算行李托运费,学习目标,了解程序结构。了解关系运算及关系表达式。了解逻辑运算及逻辑表达式。掌握使用if语句实现单分支和双分支的方法,乘坐飞机旅行,行李托运费用的计算比较复杂。如果完全依靠人工计算,会花费许多时间,而且很容易出现计算错误。如果能够使用计算机来自动计算行李费用,就可以大大提高工作效率,进而给人们带来很多方便。本项目将编写一个能够根据旅客所持机票的种类和行李重量进行判断和计算的程序,只要输入机票种类、机票等级和行李的重量,就可以知道
2、是否需要支付费用,费用是多少。,项目四 分支程序设计计算行李托运费,项目四 分支程序设计计算行李托运费,任务一 了解程序的基本结构任务二 了解if语句任务三 了解C语言的关系运算和逻辑运算任务四 进行程序总体设计任务五 选择机票类型和机票等级,输入行李重量任务六 计算行李托运费用,输出计算结果任务七 设置系统密码,任务一 了解程序的基本结构,程序按照语句出现的先后顺序来执行。出现在前面的语句先执行,出现在后面的语句后执行。称为“顺序结构”的程序。根据条件进行选择,决定下一步到底要执行什么操作的程序结构就称为“选择结构”,也叫做“分支结构”。程序的某些部分需要反复执行,称为“循环结构”,被反复执
3、行的部分就叫做“循环体”。,程序的基本结构,任务一 了解程序的基本结构,分支结构根据分支的多少,可以分为“单分支结构”、“双分支结构”和“多分支结构”单分支结构是指条件成立时执行某操作,条件不成立则什么也不执行,直接执行后面的操作。双分支结构是指条件成立时执行一种操作,条件不成立则执行另外一种操作,执行完毕后再执行后面的操作。多分支结构是指根据条件的不同,选择多种不同的操作。,任务二 了解if语句,在C语言中可以使用if语句来实现分支。if语句又叫做条件语句,可以通过判断条件是否成立来决定程序的流程(在可能执行的流程中选择执行其中的一个)。,任务二 了解if语句,一、if语句的格式if语句的一
4、般格式 if(表达式)语句组 else 语句组 或:if(表达式)语句组 else 语句组,任务二 了解if语句,二、使用if语句实现分支(1)实现单分支 省略else子句格式如下:if(表达式)语句执行过程:当条件表达式的值成立,即判定为逻辑“真”时,则执行语句;否则直接转向执行下一条语句。,任务二 了解if语句,二、使用if语句实现分支(2)实现双分支 指定else子句格式如下。if(表达式)语句 else 语句执行过程:当条件表达式的值不等于(即判定为逻辑“真”)时,则执行语句,然后转向下一条语句;否则,执行语句。,任务二 了解if语句,二、使用if语句实现分支(3)实现多分支 if语句
5、嵌套格式如下:if(表达式)语句 else if(表达式)语句 else if(表达式)语句 else if(表达式)语句 else 语句,如果一条语句中又完整地包含着另一条语句,则称为语句的“嵌套”。,任务三 了解C语言的关系运算和逻辑运算,一、了解关系运算关系运算实际上就是比较运算,即将两个数据进行比较,判定两个数据是否符合给定的关系。关系运算符,任务三 了解C语言的关系运算和逻辑运算,关系运算符的优先级 在关系运算符中,“”、“=”“”“=”优先级相同,“=”与“!=”也相同,且前4个高于后两个。关系运算符与算术运算符、赋值运算符的优先级关系(由高到低)如下:算术运算符 关系运算符 赋值
6、运算符,(3)关系表达式关系表达式是指用关系运算符将两个表达式连接起来,进行比较运算的式子。例如:ab,a+bc-d,(a=3)=b,(ab)=(bc)等均为合法的关系表达式。关系表达式可以求值,它的值是逻辑值,即为“真”(true)或“假”(false)。若表达式为真(即true)则返回1;否则,表达式为假(即false),返回0。,任务三 了解C语言的关系运算和逻辑运算,任务三 了解C语言的关系运算和逻辑运算,二、了解逻辑运算逻辑运算符C语言的逻辑运算符有3种&:当且仅当两个运算量的值都为“真”时,运算结果为“真”;否则为“假”。|:当且仅当两个运算量的值都为“假”时,运算结果为“假”;否
7、则为“真”。!:当运算量的值为“真”时,运算结果为“假”;当运算量的值为“假”时,运算结果为“真”。,逻辑表达式的真值表,任务三 了解C语言的关系运算和逻辑运算,二、了解逻辑运算逻辑运算符的优先级 逻辑“非”的优先级最高,逻辑“与”次之,逻辑“或”最低,优先关系(由高到低)为:!(非)&(与)|(或)。与其他种类运算符的优先关系(由高到低)为:!算术运算 关系运算&|赋值运算。逻辑表达式逻辑表达式是指用逻辑运算符将一个或多个表达式连接起来进行逻辑运算的式子。逻辑表达式常用于表示多个条件的组合。逻辑表达式的值为逻辑值,即“真(非0)”或“假(0)”。在判断一个表达式是“真”或“假”时;是以0和非
8、0为依据:如果为0,则判定为“逻辑假”;如果为非0,则判定为逻辑“真”。,任务四 进行程序总体设计,设计复杂的程序,通常都不直接编写代码,而是先对系统进行分析和设计。,任务五选择机票类型和机票等级,输入行李重量,一、设计程序界面 程序界面是程序与用户进行交互的接口。作为真正实用的程序,它的界面首先必须美观。另外设计界面还有一个重要的原则,就是界面要方便用户的操作,要减少用户操作步骤和记忆负担,而且最好能够提供给用户足够的操作提示,使得用户不需花费大量的时间即可学会操作程序。满足以上条件的程序就认为是界面友好的程序。,本项目的程序界面显示欢迎信息“Welcome to the baggage c
9、heck-cost computing system!”(欢迎使用行李托运费计算系统)提示用户选择机票类型和机票等级,#include main()int t_type;/*ticket type*/int t_class;/*ticket class*/float weight;/*baggage weight*/float cost;clrscr();printf(nn*Welcome to the baggage check-cost computing system!*n);printf(n Please choose your ticket type:n);printf(t 1.Ad
10、ultn);printf(t 2.Childn);printf(t 3.Babyn);printf(Your choice is(input 1,2 or 3,then press Enter):);scanf(%d,任务六计算行李托运费用,输出计算结果,计算行李托运费第1种情况:旅客如果持成人票坐头等舱,而且他携带的行李没有超过40公斤,则他应支付的费用为0,也就是说“成人票”(t_type=1)、“坐头等舱”(t_class=1)、“行李不超过40公斤”(weight=40)这3个条件必须同时都满足,才符合这种情况,只要有一个条件不满足则不符合。t_type=1”加以声明。其他情况依次类推
11、还可将程序简化,if(t_type=1|t_type=2),简化后的程序:,printf(n*n);printf(n Your check-cost is%8.2f YUANn,cost);printf(n*n);,任务六计算行李托运费用,输出计算结果,输出计算结果程序如下:,任务七 设置系统密码,假设计算系统不希望被未授权使用,而是希望只有拥有系统密码的人员才能使用该系统。那么,就需要在程序运行时,首先提示用户输入密码,只有密码输入正确,才能正常进入系统,如果密码输入错误则显示提示信息:“你的密码有误!”,而不运行系统。,int password;printf(Please input yo
12、ur password:n);scanf(%d,C语言程序设计,项目五 复杂分支程序设计字符菜单,学习目标,了解使用if语句实现多分支的方法。掌握使用switch语句完成多分支的方法。了解break语句的使用方法。,项目五复杂分支程序设计字符菜单,项目一到项目三主要使用顺序结构形式进行设计,即所有语句按照在源程序中的先后顺序逐条语句执行。项目四介绍了选择结构中的单分支和双分支的设计方法。而本项目将介绍如何利用更复杂的多分支和分支嵌套更灵活的控制程序流程。本项目将介绍C语言中多分支选择结构的设计方法,并以一个带有字符菜单的简单程序编写过程为例进行说明。,项目五复杂分支程序设计字符菜单,任务一 复
13、习选择结构任务二 了解switch-case语句任务三 菜单的显示任务四 接受用户的选择任务五 根据用户选择执行不同操作任务六 菜单的再次显示,任务一 复习选择结构,多分支的if-else语句格式:if(条件1)语句1;else if(条件2)语句2;else if(条件3)语句3;else 语句n;执行该语句时,顺次判断各条件,一旦满足某一个条件n,就接着执行对应的语句n。并且不再执行其他判断,直接退出整个if-else语句。,if(score=0/*无效成绩*/,任务二 了解switch-case语句,switch语句的语法格式:switch(整型表达式)case 常量表达式1:语句序列1
14、;case 常量表达式2:语句序列2;case 常量表达式n:语句序列n;default:语句序列n+1;,例子switch(s)case 1:a+;b-;break;case 2:a+=3;break;case 3:a+=5;break;default:a*=2;,注意,(1)switch后面括号“()”中的表达式必须是整型表达式,即它的值必须是int,char这样的整数类型。并且switch后面的括号“()”不能省略,也不能使用空表达式。(2)case语句后面的常量表达式也必须是整数类型,而且不能是变量(3)case语句起着分支判断作用,所以case后面的值必须互不相同。(4)“case表
15、达式:”后面可以是多条语句,不用加大括号“”。但是switch语句的整体要用大括号“”括起来。,注意,(5)当switch括号中表达式的值与任意一个case表达式的值都不匹配时,就执行default语句。switch语句中也可以没有default语句。(6)当根据switch表达式的值选择匹配的分支后,将顺序执行分支的语句序列,直到执行到break语句时结束,并退出switch语句。所以如果没有break语句,就会继续执行下一个分支的操作。(7)各个case语句和default语句的出现顺序可以任意。写在最后面的分支语句(包括default语句)可以不加break语句。(8)选择一条分支语句(
16、包括default语句)并执行结束后(遇到break语句或者遇到switch的右大括号“”),switch语句也就结束了。,例子:将分数score转换为等级 将score/10作为switch分支表达式,switch(int)(score/10)case 10:if(score!=100)printf(Invalid!n);/*无效成绩*/break;break;case 9:printf(Excellentn);/*优秀*/break;case 8:printf(Goodn);/*良好*/break;case 7:printf(Satisfactoryn);/*中等*/break;case
17、6:printf(Passn);/*及格*/break;case 5:case 4:case 3:case 2:case 1:case 0:printf(“Failn”);break;/*不及格*/default:printf(Invalid!n);/*无效成绩*/,任务三 菜单的显示,菜单的显示非常简单,直接输出提示字符串即可。printf(=Menu=n);printf(=n);printf(1:Calculate the Absolute Value.n);/*计算绝对值*/printf(2:Odd-Even Judgement.n);/*判断奇偶*/printf(“3:Upper Ca
18、se to Lower Case.n”);/*大写字母转小写*/printf(4:Quit!n);/*退出*/printf(=n);printf(Choose the menu item and input its number!n);,任务四 接受用户的选择,这种字符菜单当然不能象Windows应用程序那样用鼠标操作,只能通过键盘输入选择。而最简单的输入方式,是用户通过输入对应菜单项的编号选择某一项。代码如下所示。int choice;scanf(%d,任务五 根据用户选择执行不同操作,使用switch语句来实现会使结构更明确。switch(choice)case 1:计算绝对值;break
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言程序设计 设计
链接地址:https://www.31ppt.com/p-6503999.html