《计算机c语言》PPT课件.ppt
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《《计算机c语言》PPT课件.ppt》由会员分享,可在线阅读,更多相关《《计算机c语言》PPT课件.ppt(61页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第三章第三章 C语言程序的基本控制语言程序的基本控制结构结构本章目录本章目录4.1 4.1 程序的三种基本控制结构程序的三种基本控制结构 4.24.2 顺序结构顺序结构4.3 4.3 选择结构选择结构4.4 4.4 循环结构循环结构 4.1 程序的三种基本控制结构程序的三种基本控制结构 程序的三种基本结构是:顺序结构、选择(分支)结构、循环结构。任何一个结构化程序都可以由三种基本控制结构来表示,下面是这三种结构的流程图,见图4.1到4.3。AB入口出口表达式语句1语句2入口出口真假图4.1 顺序结构图4.2 选择(分支)结构 条件循环体入口出口图4.3 循环结构 上述三种基本控制结构的共同特定
2、是具有单入口和单出口。还有一种goto语句,又叫转向语句,在本章的小节中将会讲解到。我们在编写程序时,力求使用前三种基本结构语句。4.2 顺序结构顺序结构 顺序结构是最简单的一种程序结构,它通常由说明语句、表达式语句、函数调用语句和输入输出语句组成,是一种按程序的书写顺序依次执行的结构。一般也出现在选择结构或循环结构的语句体内,总之整个程序都存在顺序结构。1.表达式语句空和语句表达式语句空和语句 任何一个表达式,后面加一个分号就够成表达式语句,是C语言程序中最常用的语句。例如:x=a+b;(赋值表达式语句)+i;(算术表达式语句)printf(“%d”,a);(函数调用语句)等等,都是表达式语
3、句。特别是在表达式语句中,如果没有表达式只有分号,即 ;则是一个空语句。空语句在语法上是一个语句,但不执行任何操作。4.2 顺序结构顺序结构2.复合语句复合语句 在顺序结构中,语句常常以复合语句的形式出现在程序中。复合语句是指由两条或两条以上的语句用花括号括起来的语句序列。如果该语句序列中含有说明语句,这样的复合语句又称为分程序。复合语句在语法上作为一条语句,可以出现在任何单一语句可以出现的地方。复合语句的形式如下:说明语句部分 执行语句部分 其中,说明语句可以没有,如果有则放在执行语句的前面。例如,下面的复合语句实现交换两个变量的值:int temp;temp=a;a=b;b=temp;该语
4、句中定义的变量temp,只在本复合语句内有效。4.2 顺序结构顺序结构 3.顺序结构程序设计顺序结构程序设计 顺序结构程序通常是由说明语句、表达式语句、函数语句和输入输出语句组成的一种顺序执行的程序结构。以前所举的程序例子都是顺序结构的程序。例例4.1从键盘输入一个字符,求它的前一字符和后一字符,并输出它们的ASCII码。分析 求输入字符的前导和后续字符,只需将输入字符的ASCII码值减1或加1,分别按照字符和整数格式输出即可。程序如下:#include main()int c1,c2;scanf(%c,&c);c1=c-1;c2=c+1;printf(%c%4c%4cn,c1,c,c2);p
5、rintf(%d%4d%4dn,c1,c,c2);4.2 顺序结构顺序结构运行结果:4.3选择结构选择结构 选择结构又称为分支结构,它根据对给定条件的判断,来选择某一个分支执行。C语言提供了解决这类问题的两个基本语句:if语句(条件语句)和switch语句(开关语句)。因为在进入程序分支结构前需要进行条件判断,所以我们需要先学习关系运算和逻辑运算的有关内容。4.3选择结构选择结构 1.关系运算和关系表达式关系运算和关系表达式 1关系运算符 C语言提供了一组关系运算符,如表4.1所示。它们用来比较两个运算对象之间的大小关系。运算符名称运算功能大于A大于B=大于等于A大于等于B=小于等于A小于等于
6、B!=不等于A不等于B 关系运算符都是二元(双目)运算符,它们的优先级比算术运算符低,高于赋值运算符。在关系运算符中,、=同级,它们高于=和!=。关系运算符的结合规则都有是自左至右。4.3选择结构选择结构 2关系表达式 用关系运算符将两个表达式连接起来就构成了关系表达式。如:ab,x=y,a+b=c+b 都是合法的关系表达式。关系表达式的值是一个逻辑值,即“真”或“假”。C语言没有专门的逻辑型数据,而是用1(或非0)表示真,用0表示假。因此表达式3b的值则取决于a,b的值,但只可能是真或假(非0或0)两种情况之一。下面我们来看一个例子:(设a=3,b=5):c=5-3a+1=4=4,关系不成立
7、,其值为0,即 c=0=7 再进行关系运算0b a的ASCII码值为97,b为98,关系不成立,值为0。ab&cd 相当于 (ab)&(cd)a=0|b=0 相当于 (a=0)|(b=0)!a&b=c 相当于 (!a)&(b=c)4.3选择结构选择结构2逻辑表达式 用逻辑运算符将逻辑量(逻辑的常量、变量、函数、关系表达式等)连接起来的式子称为逻辑表达式。逻辑表达式的值是一个逻辑值,用1表示真,用0表示假,而在判断一个量的真或假时,以非0表示真,以0表示假。例如a=3,b=2,,则:!a 相当于!3为假,值为0a&b 相当于3&2为真,值为1a&!b 相当于3&0,值为0!a|b 相当于0|2,
8、值为1注意:注意:逻辑“与”和逻辑“或”运算分别具有如下性质:1)a&b,当a 为0时,不管b 为何值,结果为0。对b不作运算 2)a|b,当a为1时,不管b 为何值,结果为1。对b不作运算 利用上述性质,在计算连续的逻辑与运算时,只要有一一个运算对象的值为0,则整个表达式的结果为0,不再计算后继的运算对象;在计算连续的逻辑或运算时,只要有一个运算对象为1,则整个表达式的值为1,不再计算其它的运算对象。4.3选择结构选择结构 例4.2 main()int a=1,b=1,x=1,y=0,z=3,p=4,c,d;c=(a=xy)&(b=zp);printf(“a=%d b=%d c=%dn”,a
9、,b,c);运算结果:程序中变量a的值经过运算后为0,对于&运算符来讲,有一个运算对象为0,就不计算另外的运算对象(b),所以b的值保持不变为1。请读者注意。关系运算和逻辑运算经常用于流程控制,如选择语句或循环语句的条件表达式中。4.3选择结构选择结构3.if语句语句 if语句是条件选择语句,它通过判断是否满足给定的条件来决定所要执行的操作。1 if语句的三种形式语句的三种形式1if(表达式)语句例如:if(x=y)printf(“ok”);这种if语句的的执行过程见图4.4。表达式语句假(0)真(非0)图4.44.3选择结构选择结构 2.if(表达式)(表达式)语句1else语句2 例如:i
10、f(x=y)printf(“ok”);else printf(“no”);见图4.5 表达式语句1语句1图图4.5真假4.3选择结构选择结构 3 if(表达式(表达式1)语句1 else if(表达式2)语句2 else if(表达式3)语句3 else if(表达式m)语句m else 语句n 流程图见图4.6。表达式1表达式2表达式3表达式4语句5语句4语句3语句2语句1真真真真假假假假图图4.64.3选择结构选择结构例如:if(score=85)p=A;else if(score=70)p=B;else if(score=60)p=C;else p=D;说明:说明:1)三种形式的if 语
11、句中在if 后面都有“表达式”,一般为逻辑表达式或关系表达式。也可以是其它类型的表达式,只要能够判断最后确定的值为真或假就行了。2)else子句不能作为语句单独使用,它必须是if 语句的一部分,与if 配对使用。else语句只能和它最近的上面的if进行配对结合。3)在if和else后面可以只含一个内嵌的操作语句,这时可以不用花括号“”括起来,也可以有多个操作语句,此时必须用花括号“”将几个语句括起来成为一个复合语句。4.3选择结构选择结构 例4.3 幼儿园里三个小朋友站队要求小个站在前面,高个站在后面。分析:我们可以把个子最小的小朋友放在a位置上,较高的小朋友放在b位置上,个子最高的小朋友放在
12、c位置上。输入三个数,a,b,c,要求按由小到大的顺序输出。先比较a和b,若a大于b,则a与b对换,再比较a和c,若a大于c,则a与c对换,这时a的值是最小的,最后比较b和c,若b大于c,则b与c对换。这样操作之后就使abb)t=a;a=b;b=t;if(ac)t=a;a=c;c=t;if(bc)t=b;b=c;c=t;printf(%4.2f,%4.2f,%4.2f,a,b,c);运行结果:4.3选择结构选择结构 2 if语句的嵌套语句的嵌套 在if语句中又可包含一个或多个if 语句,这种形式称为if语句的嵌套。一般形式如下:if()()if()()语句语句1else 语句语句2 else
13、if()()语句语句1else 语句语句2 应当注意if 与else的配对关系。else总是与它上面的最近的if配对。如果if与else的数目不一样,为实现程序设计者的企图,可以加花括弧来确定配对关系。例如:if()if()语句1 else 语句2 这时花括号“”限定了内嵌if 语句的范围,因此else与第一个if配对。4.3选择结构选择结构 例例4.4 有一函数 -1 (x60)编写程序,输入一个x值,输出y值。程序如下:#include main()int x,y;printf(Please input a mumber:n);scanf(%d,&x);if(x=3n”,num);brea
14、k;case 2:case 1:printf(“%d=1n”,num);break;default:printf(“error”);程序中当num等于5,4,3的时候,3条case语句共用了一组执行语句,当num等于2,1的时候,2条case语句共用了一组执行语句。4.3选择结构选择结构 4.switch语句语句例例4.5 利用switch语句对五分制和百分制的关系编写编程 main()char grade;scanf(%c,&grade);switch(grade)case A:case B:printf(80100);break;case C:case D:printf(6079);bre
15、ak;default:printf(no);break;运行结果:4.3选择结构选择结构 当然if语句和switch语句都能实现多分支选择结构的编程,可以根据编程者的想法进行编写C程序语句。例例4.6长途电话计费方式为,3分钟收费0.6元(不足3分钟,按3分钟计费),以后超过1分钟增收0.3元(不足1分钟,按1分钟计费)。若通话时间在24点至晨8点之前,则按半价收费。分析:定义变量ts表示打电话的起始时间,如果ts在248点之间,rate表示半价。tm表示打电话的总时间,要取时间的整数,不足1分钟的要加上1分钟,本例中用到了强制类型转换运算符(),对时间tm进行tm+1的操作。cost表示电话
16、费。4.3选择结构选择结构#include main()int ts;float tm,rate,cost;scanf(%d,%f,&ts,&tm);if(ts24|ts7)printf(half charge rate:n);rate=0.5;elseprintf(full charge rate:n);rate=1.0;if(tm!=(int)tm)tm=(int)(tm+1);if(tm=3)cost=0.6*rate;else cost=(0.6+(tm-3)*0.3)*rate;printf(charge of this call is%fn,cost);4.3选择结构选择结构运行结
17、果:运行结果:4.4 循环结构循环结构 许多实际问题中都需经有规律地重复某些操作,因此程序中就需要将某些语句重执行,这就是循环。语言循环的实现使计算机真正充当了代替人类工作的角色。循环语句可以将计算机定义成无休止的工作状态。无论哪种循环的定义都包括四个部分:1)循环初始状态;2)能够决定是否中止循环的条件判断;3)对上一循环状态的值进行修正;4)循环体,即重复执行的语句序列。C语言提供了三种用来实现循环的语句,即while语句,do_while语句和for语句。另外,还可以由goto语句和if 语句构成循环。4.4 循环结构循环结构 1 while循环语句循环语句(“当型当型”循环循环)whi
18、le循环语句的一般形式如下:while(表达式表达式)语句(即循环体)语句(即循环体)其中,while是关键字,语句部分可以是一条语句,也可以是复合语句,还可以是空语句,这一部分称为循环体。该语句的执行过程是:先判断while后面圆括号中表达式的值,如果式的值为非(真),则执行后面的语句部分,即循环体,然后次计算表达式,并重复上述过程,直到表达式的值为(假)为时,退出循环。该语句的特点是先判断表达式的真和假,后执行循环体。4.4 循环结构循环结构#include main()int i=1,sum=0;while(i=100)/*循环条件*/sum+=i;/i+;/*循环变量增值*/print
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机c语言 计算机 语言 PPT 课件
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内