《C语言程序设计基础》课件_第3章.pptx

上传人(卖家):kld 文档编号:8179187 上传时间:2024-12-23 格式:PPTX 页数:72 大小:756.54KB
下载 相关 举报
《C语言程序设计基础》课件_第3章.pptx_第1页
第1页 / 共72页
《C语言程序设计基础》课件_第3章.pptx_第2页
第2页 / 共72页
《C语言程序设计基础》课件_第3章.pptx_第3页
第3页 / 共72页
《C语言程序设计基础》课件_第3章.pptx_第4页
第4页 / 共72页
《C语言程序设计基础》课件_第3章.pptx_第5页
第5页 / 共72页
点击查看更多>>
资源描述

1、第3章 顺序结构实现语句顺序结构程序设计3.1 简单的顺序结构语句简单的顺序结构语句3.2 数据的输入数据的输入/输出输出3.3 顺序结构程序设计顺序结构程序设计实操训练实操训练课外练习课外练习何谓顺序结构?计算机怎样执行顺序结构程序?何谓顺序结构?计算机怎样执行顺序结构程序?顺序处理是人们处理问题最基本的思维方式,也是程序的基本结构。所谓顺序处理,就是按照一定的逻辑或时间顺序一步一步地执行,程序的顺序结构由顺序执行语句组成,如图3.1所示。顺序结构是一种最简单的程序结构。顺序结构语句是无条件被执行的语句,每一个程序必包含顺序结构语句。从程序的功能上看,顺序结构语句一般包括提供基本数据的语句、

2、简单数据处理语句和数据输出语句。本章从最简单程序设计出发,介绍一些顺序结构实现语句与程序设计方法。图3.1 顺序结构3.1 简单的顺序结构语句简单的顺序结构语句简单的顺序结构中包含哪些语句?简单的顺序结构中包含哪些语句?顺序结构语句中,有些语句比较复杂,需要深入学习才能正确使用,而有些语句比较简单,很容易使用。本节先介绍一些简单的顺序结构语句。1.变量定义语句变量定义语句在第2章已经介绍了变量的作用、意义以及变量的定义语句。变量定义语句的一般格式为类型符 变量名;从程序结构上看,变量定义语句基本上是一个程序必有的语句。因为程序中的基本数据都是通过变量来存储的,所以成为基本的数据对象。变量定义语

3、句一般出现在程序的开始。2.表达式语句表达式语句一个表达式末尾加上“;”就构成表达式语句。从C语法规定来讲,任何一个表达式加上“;”都可以构成C语句。从功能作用上讲,有些表达式能构成有意义的语句,而有些表达式构成的语句是没有意义的。3.函数调用语句与返回函数值语句函数调用语句与返回函数值语句C语言中的函数是实现相对独立功能模块的基本结构,相当于其他高级语言中的子程序或过程。函数调用语句用来引用函数的功能。函数调用语句的一般格式为函数名(实参列表);函数调用的功能是将程序执行转到被调用函数处。通过实参列表向被调用函数传递所需要的初始数据。例如:printf(This is a C stateme

4、nt.);这是一个输出库函数的调用语句,传递的参数是一个字符串常量,实现的功能是输出所传递的字符串。如果调用一个函数要求有一个返回值,要通过返回语句来实现。返回语句的一般格式为return(返回数据);返回语句的功能是将括号中的数据从被调函数带回主调函数。括号中的“返回数据”一般是一个变量或表达式。返回语句一般用在函数体的末尾。main()函数无返回值,但C99提倡在函数末尾加“return 0;”语句,表示函数正常返回。如果不加,则编译系统自动添加,程序也能编译运行。4.空语句空语句空语句是指程序语句行只有“;”。“;”是C语句的唯一标识,只要出现一个“;”就认为是一条语句。因分号前无内容,

5、所以称为空语句。从形式上看,空语句好像没有什么意义,但还是有其用途的。如用程序实现一段延时,延时中不要求做什么,只是耗费一段时间,就可以采用空语句来实现。5.复合语句复合语句C语言中,把用界定的一个语句集合称为复合语句。例如:z=x+y;t=z/100;printf(%f,t);这是一个复合语句。复合语句中包含若干个C语句,也可能包含非顺序语句,但作为一个语句看,它仍属于顺序语句。3.2 数据的输入数据的输入/输出输出何谓数据的输入何谓数据的输入/输出?输出?C语言中怎样实现数据的输入语言中怎样实现数据的输入/输出?输出?数据的输入和输出是一个程序具有的基本功能。输入是用户把数据通过计算机输入

6、设备提供给程序。输出是将程序的处理结果通过计算机输出设备传送给用户。数据在计算机内部是以二进制形式进行存储与处理的。用户在输入设备上输入的数据都是人们熟悉的十进制数或字符。用户从输出设备上得到的数据不仅要求是人们熟悉的数据形式,而且需要满足一定的格式要求。输入/输出是一个计算机与外部设备接口间传输数据的复杂过程。高级编程语言中提供简单的输入/输出实现语句,复杂的硬件接口间的数据传送、数据形式转换、数据格式控制等都在系统内部来完成。C语言提供了一些输入/输出库函数来实现这些功能。在程序中只要通过规定格式的函数调用语句就可以实现数据的输入/输出。本节主要介绍常用的输入/输出库函数的调用方法。3.2

7、.1 数据格式输出函数数据格式输出函数(printf)输出函数的调用格式是什么?怎样控制数据的输出格输出函数的调用格式是什么?怎样控制数据的输出格式?式?数据的格式输出可通过调用库函数中的printf格式输出函数来实现。该函数可以将数据以不同的形式并按用户所要求的格式输出。1调用格式调用格式printf函数调用的一般格式为printf(格式控制字符串,输出数据列表);其中,printf是库函数名,作为系统使用的关键字,调用语句必须严格使用此函数名,否则不能实现调用。格式控制字符串是用双撇号界定的一个字符序列,用于控制输出数据的形式和数据的格式。格式控制字符串一般包含格式字符、非格式字符和转义字

8、符三部分。(1)格式字符用于控制所对应输出对象的数据形式。C语言中常用的格式字符见表3.1。格式字符必须以“%”开始,如%d、%i、%u、%o、%x、%X、%c、%s、%f、%e、%E、%g、%G。(2)非格式字符指需要照原样输出的字符,如“printf(hello world!);”,则输出“hello world!”字符串。(3)转义字符用于控制输出数据的格式。例如:“n”表示回车换行;“t”表示输出跳到下一个制表位。其他转义字符见表2.1。输出数据列表是用逗号分隔的变量、常量、表达式、函数等,每个输出项依次与格式控制符匹配。例如:printf(a=%d,b=%f,c=%c n,a,b,c

9、);按照格式字符和输出项从左到右的次序对应匹配,即%d控制a以十进制整数形式输出,%f控制b以十进制小数形式输出,%c控制c以字符形式输出,n控制光标或打印头停在输出数据行的下一行首(即换行)。格式控制字符串中的其他字符照原样输出。分析:(1)格式控制字符串于开始使用t,使数据从行首的第2个制表位置输出,即行首空8个字符位。第1个printf函数的控制符使用nn,使两行数据之间有一个空行。其他非格式字符按出现顺序原样输出。(2)定义a为无符号整型变量,分别以%d、%o、%X、%u格式输出,按照数据实际值分别以十进制、八进制、十六进制、无符号数的形式输出。(3)定义b为带符号整型变量,在计算机内

10、部以二进制补码形式存储,存储结构如图3.2所示。以%d控制b以十进制整数值形式输出,即把内部的二进制补码转换成二进制原码,再转换成十进制数值输出;以%o、%X、%u分别控制b以八进制、十六进制和十进制无符号数形式输出,也就是把机内存储补码的符号位作数值位,分别转换为八进制、十六进制和十进制数输出。图3.2 变量b值的原码与补码分析:从运行结果可以看出,%f控制符使实型数据的整数部分按实际数位输出,小数部分采用系统默认的6位有效数字,第6位小数位是系统对小数第7位按四舍五入处理后的数值。%e、%E控制符输出的实数形式是一样的,仅是底数的表示字母不同而已,小数部分采用规范化形式,默认6位有效数字,

11、指数部分符号占一位,指数占3位。%g、%G控制符输出的实数形式也是一样的,以最小宽度输出实型数据。分析:%s控制输出对象以字符串的形式输出,要求输出对象是一个字符串,按字符串的实际长度输出。%c控制输出对象以字符的形式输出,输出对象可以是字符型数据,也可以是整型数据。输出对象是整型数据,则看作字符的ASCII码,取值范围是0255。从本例又可以看出,字符型数据与整型数据可以通用。字符型数据可以用%d格式输出,则输出的是字符的ASCII码。整型数据(0255)可以用%c格式输出,则输出的是十进制整数ASCII码所表示的字符。2附加说明符的使用附加说明符的使用格式字符前可以插入附加说明符或加上一个

12、数字,控制宽度以及小数位数,以说明输出数据的类型、形式、长度、小数位数等。常用的附加说明符见表3.2。下面对表3.1中所列的格式字符作进一步说明。(1)%d表示按十进制整型数据的实际长度输出,对long型数据,应当用%ld或%Ld格式。还可以在%与格式字符之间插入一个数字,来控制数据的输出长度,如%md、%mld、%mLd、%-md、%-mld、%-mLd等。分析:从程序的执行结果可以看出,在格式控制符中插入数字“10”,使输出数据占10列宽度。不加对齐格式符(或加“+”),数据在输出域内右对齐。加对齐格式符“-”,数据在输出域内左对齐。(2)%f格式使实数的整数部分全部输出,小数部分输出6位

13、有效数字。还可以在%与f之间插入“m.n”,来控制数据的输出长度及小数点位数。其中,m表示数据所占列数(包括符号和小数点),n表示小数部分所占位数(不包括小数点),如果数据长度小于m,则左补空格。还可以加对齐方式字符。也可以只规定数据宽度m,或只规定小数位数n。例如%m.nf、%-m.nf、%mf、%-mf、%.nf、%-.nf等。分析:%f控制整数部分按实际位数输出,系统默认输出6位小数,与实际小数不一样,是由系统在内存中的存储误差引起的。%10.2f控制输出数据占10个字符位、两位小数,并按默认方式右对齐,规定的两位小数系统按第3位小数四舍五入处理后输出,因实际的数据位数小于设定的数据宽度

14、,所以左补空格。%-10.2f控制的输出数据,其宽度、小数点位数同%10.2f,但要求左对齐,因实际的数据位数小于设定的数据宽度,所以右补空格。%10f只设定输出数据的宽度,因整数和小数点占4个字符位,剩下6位则作小数的输出位数。%.2f只设定输出小数部分的宽度,整数部分则按实际数位输出。(3)%e或%E格式下,系统默认6位小数,指数部分占5位(如e+003),“e”占一位,指数符号占一位,指数占3位,数值按标准化指数输出。可以在%与e(E)之间插入“m.n”,来控制数据的输出长度及小数点位数。其作用及使用方式同%f。也可以加对齐方式字符。(4)%s格式下,输出字符串的实际字符。可以在%与s之

15、间插入“m.n”,其作用是:输出的字符串占列,但只截取字符串中左端n个字符输出。如字符串本身长度大于m,即突破的限制,将字符串全部输出。若串长小于m,则左补空格。也可以插入对齐方式字符。例如,%m.ns、%-m.ns、%ms、%-ms。分析:%s控制字符串按实际长度输出。%15s控制字符串占15个字符位,默认右对齐;因字符串的实际长度小于15,所以左补空格。%15.3s控制字符串占15个字符位,只截取前3个字符输出,默认右对齐,左补12个空格。%-15.3s同%15.3s,要求左对齐,右补12个空格。3.2.2 数据格式输入函数数据格式输入函数(scanf)输入函数的调用格式是什么?怎样设定输

16、入数据的格输入函数的调用格式是什么?怎样设定输入数据的格式?式?数据的格式输入是通过调用库函数中的格式输入函数scanf来实现的。该函数可以实现任何类型的多个数据的输入。1调用格式调用格式scanf函数调用的一般格式为scanf(格式控制符,地址列表);scanf是库函数名,作为系统使用的关键字,调用语句必须严格使用此函数名,否则不能实现调用。格式控制字符串是用双撇号界定的一个字符序列,用于控制输入数据的形式和格式。格式控制字符串一般包含格式字符、非格式字符两部分。(1)格式字符用于指定输入数据的形式。常用的格式字符见表3.3。格式字符以“%”开始,在%和格式字符之间也可以插入附加说明符。常用

17、的附加说明符见表3.4。(2)在格式控制字符串中出现非格式字符时,在输入数据时要照样输入。地址列表是存放输入数据变量的地址。例如:scanf(%d%d%d,&a,&b,&c);2调用执行与数据输入调用执行与数据输入调用执行scanf函数时,光标停留在一个位置闪烁,等待输入数据。用户应按格式控制字符串中设定的格式和地址列表中变量的顺序依次输入数据。如果格式控制字符串中没有插入非格式字符,每输入一个数据,应按结束键,计算机每取得一个数据就赋给对应变量,直到地址列表中所有变量都取得数据,则scanf函数调用结束。结束一个数据的按键有回车键、空格键、Tab键。如果格式控制字符串中插入非格式字符,作为数

18、据的间隔符号,则每输入一个数据应输入设定的间隔符号,输入完毕则按“回车键”。如执行“scanf(%d,%d,%d,&a,&b,&c);”时,则应按如下形式输入:12,34,56即格式控制字符串中插入的非格式字符必须照原样输入。分析:3个scanf 函数调用语句前都用了一个printf,输出一个字符串信息,提示输入数据,这是为了提高界面的“友好”性;输入数据的类型要与格式控制符对应;非格式字符要照原样输入;系统按输入数据的顺序将其依次赋给scanf中的变量。3关于关于scanf函数的几点说明函数的几点说明(1)可以指定输入数据的长度,系统按指定长度截取数据,赋给对应变量。例如:scanf(%3d

19、%3d,&a,&b);输入123456789系统将123赋给a,456赋给b。(2)插入“*”附加说明符,表示系统给变量赋值要跳过一个数据。例如:scanf(%d%*3d%2d,&a,&b);输入1234567系统将12赋给a,跳过345,将67赋给b。(3)格式控制字符串中若包含非格式字符,这些字符要按出现顺序照原样输入。例如:scanf(%d:%d:%d,&h,&m,&s);应输入12:23:383.2.3 字符输出函数字符输出函数(putchar)C语言库函数中提供了一个用于字符输出的函数。其调用的一般形式为putchar(ch);其中,ch是输出的字符型数据对象,可以是字符常量、字符变

20、量、整型常量和整型变量。3.2.4 字符输入函数字符输入函数(getchar)C语言库函数中提供了一个用于字符输入的函数。其调用的一般形式为getchar();调用执行该函数时,光标停留在一个位置闪烁,等待输入字符,从键盘上输入一字符后按回车键,则将得到的字符作为返回值。3.3 顺序结构程序设计顺序结构程序设计简单顺序结构程序设计应考虑哪些问题?简单顺序结构程序设计应考虑哪些问题?顺序结构程序是最简单的程序,设计时,只需把解决问题的步骤按顺序列出,再写出实现每一步的C语句。一般来说,一个程序要包含存放数据的变量定义、数据处理和输出结果三个部分。解决问题的步骤称为算法。编程之前,算法应用流程图描

21、述出来。流程图是按约定的图形符号绘制的。例例3.11 输入三角形的三边长,求三角形面积。编程思路:已知三边,求解三角形面积的数学公式为算法用流程图表示,如图3.3所示。C语言库函数中提供了一个求平方根的函数sqrt(float x)。程序中要调用输入/输出函数和数学公式计算库函数,所以在程序开头应使用预处理命令将stdio.h和math.h头文件包含进来。c)b(a21sc)b)(sa)(ss(sarea分析:根据程序中处理的数据,定义实型变量a、b、c,用于存放三角形三边数据,定义实型变量s、area,用于存放中间计算结果和三角形面积。程序按顺序先输入三角形三边数据,再计算三边之和的二分之一

22、,按公式计算面积,最后将结果输出。例例3.12 从键盘输入一个大写字母,要求转换成小写字母并输出。编程思路:查ASCII码表可知,大写字母与小写字母的ASCII码值相差32。所以,只要将大写字母ASCII码值加32,即转换为小写字母的ASCII码值。分析:定义字符变量c1、c2,getchar函数从键盘接收一大写字母并转换成ASCII码,赋给变量c1,然后按字符型和实型ASCII码输出,再进行转换计算,将结果赋给c2,最后把转换的小写字母按字符型和实型ASCII码输出。实操训练实操训练实训任务三 熟悉格式输入/输出和顺序程序设计实训项目 设计程序,实现单一功能计算器,输入/输出界面可参照图3.

23、4所示。图3.4 实训项目输入/输出界面式样实训指导实训指导1设计程序(1)根据所处理的数据定义变量。(2)调用格式输出函数,在屏幕上显示数据输入的提示信息。(3)调用格式输入函数,输入运算数。(4)调用格式输出函数,设置格式控制字符串,输出算式。2.调式运行程序(1)分别输入不同运算数,查看结果是否正确,输出格式是否满足要求。(2)修改程序,分别实现两个整数求差、求积、求商、求余功能。(3)修改程序,分别实现两个实数和、差、积、商的运算功能。课外练习课外练习1分析以下问题,从每小题给出的4个备选项中选择一个正确项。(1)设x、y和z均为int型变量,则执行语句“x=(y=(z=10)+5)-

24、5;”后,x、y和z的值是()。Ax=10,y=15,z=10Bx=10,y=10,z=10Cx=10,y=10,z=15Dx=10,y=5,z=10(2)执行下列程序的结果是()。A9.000000B16.000000C1.000000D程序有错误(3)下述程序的输出结果是()。A2.50000B2.750000C3.375000D3.000000(4)下列程序的输出结果是()。A0.00000e+00B0.0C1.00000e-07D0(5)以下程序是不用第三个变量实现将两个数进行对调的操作,从4个备选项中选择正确的一项,填写在程序的下划线处。()Aa+bBa-bCb*aDa/b(6)执行下列程序时输入1234567,程序的运行结果为()。A17B46C15D9 2下面是输入两个整数、输出它们的平方和的不完整程序,请填空,使其完整。3设半径r=1.5,圆柱高h=3,编写程序,求圆周长、圆面积、圆球表面积、圆球体积、圆柱体积。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 大学
版权提示 | 免责声明

1,本文(《C语言程序设计基础》课件_第3章.pptx)为本站会员(kld)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|