电子教案-C语言程序设计教学做一体化-滕泓虬课件.ppt

上传人(卖家):晟晟文业 文档编号:4314983 上传时间:2022-11-28 格式:PPT 页数:371 大小:3.86MB
下载 相关 举报
电子教案-C语言程序设计教学做一体化-滕泓虬课件.ppt_第1页
第1页 / 共371页
电子教案-C语言程序设计教学做一体化-滕泓虬课件.ppt_第2页
第2页 / 共371页
电子教案-C语言程序设计教学做一体化-滕泓虬课件.ppt_第3页
第3页 / 共371页
电子教案-C语言程序设计教学做一体化-滕泓虬课件.ppt_第4页
第4页 / 共371页
电子教案-C语言程序设计教学做一体化-滕泓虬课件.ppt_第5页
第5页 / 共371页
点击查看更多>>
资源描述

1、C语言程序设计教学做一体化 模块一 初识C语言通过学习C语言,既可以用来编写应用软件和系统软件,又可以培养计算机编程基本思想、编程基本技能及逻辑思维能力。1.1 简单的C程序 学习目标 1、了解C语言程序的结构特点2、掌握库函数的调用方法案例1-1 在计算机屏幕上输出“Hello,my C world!”案例程序案例程序main()/*主函数*/printf(“Hello,my C world!n”);/*输出要显示的内容*/运行这个程序,在屏幕上显示一行英文:Hello,my C world!由案例开始 1、这是一个最简单的C程序,学习C语言就由此开始吧!2、C程序是由函数组成的,函数就是相

2、对独立的可以完成特定功能的程序段。本程序就是由一个称为main的函数构成的。其中main是函数的名字,函数名后都要有一对圆括号,用来写函数参数的,本程序的main函数没有参数所以不写,但圆括号不能省略。3、一个完整的程序必须有一个main函数,称为主函数,程序总是从main函数开始执行的,也就是说,main函数是程序的入口。案例分析 4、main()后面花括号内的部分称为函数体。本程序中的函数体只由一个语句组成。一般情况下函数体由“说明部分”和“执行部分”组成。说明部分的作用是定义数据类型;执行部分给出操作命令。本实例只有执行部分而没有说明部分。5、C程序的每一条基本语句都以“;”结束。6、可

3、以用/*.*/对C程序的任何部分作注释,用来解释该条语句或该段程序的含义或作用,只是为了帮助程序阅读者更好地理解程序中有关部分内容而写的。7、printf是C的库函数中的一个函数,它的作用是在显示屏上输出指定的内容,此例输出“Hello,my C world!”字符串。printf(“Hello,my C world!n”)括号中的内容就是调用printf库函数时的参数,通俗地讲就是“通知”printf要显示的内容。参数中的“n”是C语言中的格式控制符,作用是:在输出“Hello,my C world!”之后执行一个回车换行操作,如果以后还有输出的话,将从下一行的左端开始输出。随堂练习编写一个

4、C程序,输出以下信息:*Turboc 2.0*案例1-2 求从键盘输入的任意两个整数相加的和并将结果显示出来。#includemain()int a,b,sum;/*定义三个整型变量*/printf(“Input one number:”);/*调用printf库函数输出信息在屏幕上*/scanf(“%d”,&a);/*调用scanf库函数执行由键盘输入数据并赋值给加数a*/printf(“Input the other number:”);/*提示信息*/scanf(“%d”,&b);/*由键盘输入数据赋值给被加数b*/sum=a+b;/*求a和b两数之和*/printf(“sum=%d n

5、”,sum);/*输出sum(和)的值在屏幕上*/案例程序 程序运行结果如下:Input one number:5 Input the other number:10sum=15 1、首先应该考虑程序中要用到的数据的个数,显然本例中要用到三个数,即加数、被加数、和,所以先定义三个变量。语句 int a,b,sum;的作用就是定义三个变量,名字分别为a,b,sum,类型都是整型。int 表示整型,是C语言的关键字(见知识链接)。当程序运行的时候,系统将根据定义在内存中为这三个变量分配存储单元。输入的数就存放在这三个单元中。可以这样说,变量的作用就是用来保存和标识数据,访问数据就可以通过变量名来访

6、问。案例分析sumba存储单元 2、库函数调用scanf(“%d”,&a);用来实现从键盘接收用户输入的数据,并送到变量a所对应的地址单元中。这也意味着,变量a的值就是输入的值。例如从键盘输入5,那么变量a的值就是5。&表示取地址(也称为取地址运算符),“%d”用来限制输入数据的格式是整数。3、sum=a+b;表示将a和b两个变量单元中的内容相加,并将结果存放在sum所对应的存储单元中。4、库函数调用printf(“sum=%dn”,sum);用于输出结果到屏幕上。注意第一个“sum”,包括“=”,都表示字符串常量的一部分,应该按原样输出,即在屏幕上显示 sum=。“%d”用来限制输出的格式是

7、整型,括号右端的sum是要输出的变量名字,执行该函数时,就是把sum变量的值按照整型格式输出在%d的位置,如图1-2。所以最后输出:sum=15。%d称为格式控制符,也可以称为占位符。printf(“sum=%dn”,sum);用sum的值取代%d 5、#include语句是编译预处理语句,其作用是将有双引号或尖括号括起来的文件内容代替这行#include命令,也就是使该文件的内容被整个地调到main函数的前面。“.h”是“头文件”的后缀,输入输出函数一般需要使用#inlcude语句将包含输入输出函数说明信息的头文件“stdio.h”包含到源文件中。编程由键盘输入长方形的长和宽,求长方形的面积

8、。随堂练习求一个数的绝对值并输出。案例1-3#includemain()float num,n;/*定义两个实数类型的变量*/scanf(“%f”,&num);/*从键盘输入数值保存在变量num对应的存储单元中*/n=abs(num);/*调用库函数abs求num变量的绝对值并保存在变量n中*/printf(“%fn”,n);/*输出所求的绝对值*/案例程序 运行程序:-1.51.5 1、float num,n;表示定义变量num和n为实数类型(浮点型),“float”表示实型,是C语言数据类型关键字。2、“%f”是格式控制符,控制输入输出的数据是实型。3、abs是C系统的库函数,在调用数学库

9、函数时,要用到一些系统提供的说明信息,这些信息包含在math.h头文件中,所以在程序的开始要用预处理命令#include包含进来。案例分析编程调用库函数,计算一个数的正弦值。随堂练习1、C语言的关键字关键字是C语言已经定义的、具有特殊功能和含义的单词、单词缩写或者单词组合。表1-1列举了3 2个关键字,它们与标准C句法结合,形成了程序设计语言C。知识链接2、C语言的库函数C语言提供了丰富的库函数,每个函数实现一定的功能。C语言本身语句很少,许多功能都是通过库函数完成的。例如,前面用到的输入输出的功能和求绝对值的功能都是通过调用库函数实现的。3、ASCII字符集在计算机中,所有的信息都用二进制表

10、示。其中应用最为广泛的编码方式就是ASCII码。使用的字符在计算机中就是以ASCII码方式存储的。ASCII码是美国标准信息交换码(American Standard Code for Information Interchange),已被国际标准化组织认定为国际标准,详见附录。学习目标 1、掌握C程序的编译运行过程 2、掌握C程序的错误查找方法1.2 C程序的上机过程案例1-4 一个简单的C程序的运行过程。案例分析1、把Turboc2.0文件夹放在电脑C盘下面。2、打开文件夹内的TC可运行文件,进入Turboc2.0,以下简称Turboc。3、按【Alt+F】快捷键打开【File】(文件)菜

11、单,用键盘上的【】和【】选择【New】菜单项,进入编辑状态,如图所示。在Turboc中,按【Alt】+【对应菜单的首字母】即可打开相应的菜单。另外,也可按【F10】功能键选中相应的菜单。4、编辑在编辑区域输入以下代码:#include”stdio.h”main()printf(“No pains,no gains!”);还可以事先将源代码写在记事本中,将其保存为.c文件,然后打开Turboc的【File】菜单中的【Load】菜单项或按【F3】键,在Turboc中打开该源文件,这时在Turboc中就出现了在记事本中输入的C代码,接着编译、连接和运行它即可。5、保存输入程序后对程序进行认真检查,并

12、改正已发现的错误。这时已及时将程序保存起来。选择【File】菜单下的菜单项【Save】或者直接按快捷键【F2】,在弹出的对话框中出现文件的默认路径和默认文件名,这时可以修改路径和文件名,如图1-4所示。这里把把路径改为D盘ZHANGSAN(张三)文件夹下,文件名为CH1_1.C,表示第一章第一个C程序。6、编译编辑好的C代码,计算机是不能识别的。这是因为计算机只能识别称为机器语言的二进制命令,所以要想执行这段代码,就必须将源代码转换成机器语言。也就是要做第二步编译源代码,将源代码作为输入,并生成一个磁盘文件,该文件包含了与源代码语句对应的机器语言指令,该指令即为目标代码,而包含它们的磁盘文件称

13、为目标文件。在Turboc中,编译源代码,按【Alt+C】快捷键打开【Compile】菜单,选择【Compile】菜单下的【Compile to OBJ】菜单项,或直接按【Alt+F9】快捷键,编译程序后,出现编译信息提示窗口,如图1-5所示。它表示有一个错误,没有警告。按任意键信息窗口(Message)被激活,在出现第一个错误信息提示处以白色高亮度显示,同时,编辑窗口中相应的错误语句所在行也以白色高亮度显示,如图1-6所示。按回车键【Enter】可切换到编辑窗口出现错误的语句行,同时对应的错误提示信息以红色亮条在编辑区上部显示。有时候程序可能只有一处错误,但会显示多条错误信息。所以一般修改一

14、处错误后,应该再次进行编译。在程序没有错误的情况下,便可将当前源代码编译成目标代码。在当前工作目录下产生一个扩展名为“.obj”的目标程序文件。本例产生的文件名为“CH1_1.obj”。当查找错误时,可以使用【F6】键在编辑窗口和消息窗口之间进行切换。错误有时会出现在错误语句行前面的某条语句处,在图1-5中,错误原因是第一行main()后不应有分号“;”,而出错信息提示却在第二行上。这个程序刚好与刚才提到的情况相反,它实际上有两处错误,但只提示有一处错误,在这种情况下,改正一处错误后,再次编译后,还会再提示第二处错误。本例的第二处错误是第三行语句应该加分号作为语句结束。提示 7、连接 有了目标

15、文件后,程序还不能直接运行,还必须将目标文件与系统提供的库函数和包含文件(“#include”命令所包含的文件)等连接成一个可执行文件,即扩展名为“.exe”的文件,这时才形成最后的可运行文件。选择【Compile】菜单下的【Link EXE file】菜单项,在当前工作目录中生成一个可执行文件。本例生成可执行文件“CH1_1.exe”。可以一次完成编译和连接,选择【Compile】菜单下的【Make EXE file】菜单项,或者按【F9】快捷键,在当前工作目录中生成一个目标文件(*.obj)和一个可执行文件(*.exe)。另外,可以指定生成的目标文件和可执行文件到指定的输出目录。本例就可以

16、重新设定输出目录为“D:ZHANGSAN”。按【Alt+O】快捷键打开【Options】菜单,选择【Options】菜单下的【Directories】菜单项,在弹出对话框中选中【Output directory】选项,然后设定输出目录(Output directory)为“D:ZHANGSAN”如图所示。提示最后在相应目录下,可以查看本实例的源文件、目标文件和可执行文件如图所示。8、运行在TC集成环境下,按【Alt+R】快捷键打开【Run】菜单,选择【Run】菜单下【Run】菜单项,或者直接按【Ctrl+F9】快捷键,则可执行文件即开始运行。【Ctrl+F9】快捷键的作用不仅是运行程序,而且包

17、含编译、连接和运行,也就是说,如果编辑好源程序后,经检查认为没有问题,通过按【Ctrl+F9】快捷键,则可以一次完成从编译、连接到运行的全过程。提示9、观察运行结果选择【Run】菜单下的【User screen】菜单项,即可打开用户屏幕观看结果。也可以使用快捷键【Alt+F5】查看运行结果。本例运行结果如图所示。运行过程的常用快捷键是:1、F9:进行编译和连接。2、Ctrl+F9:运行。3、Alt+F5:观看运行结果。提示按照上机过程运行一个简单的C程序。随堂练习C语言采用编译方式将源文件转换为二进制的目标代码。从编写到运行一个C程序一般经过以下几个步骤:1、编辑内容包括:将源程序逐个字符输入

18、到计算机内存;修改源程序;保存源程序到磁盘文件中。源程序是以ASCII代码的形式输入和存储的,不能被计算机执行。2、编译编译就是将编辑好的源程序翻译成二进制的目标代码。在编译时,对源程序进行语法检查,如有错,则在屏幕上显示出错信息。知识链接3、连接将目标文件与系统提供的库函数和包含文件(“#include”命令所包含的文件)等连接成一个可执行文件,该文件可由计算机直接执行。4、执行可执行文件连接好后,就可以运行它了。需要指出的是,经过成功编译和连接的可执行文件不一定能正确运行,或者运行所得的结果与期望的不符,出现这种情况,则需返回从头开始检查,找出导致错误的原因。从编写到运行一个C程序的全过程

19、如图所示:选择New命令新建一个源程序在编辑区录入代码编译源程序,生成目标文件连接目标文件,生成可执行文件运行可执行文件,查看结果根据编译信息调试程序,修改错误课后练习 1、一个、一个C程序的执行是从程序的执行是从()。A)本程序的本程序的main函数开始函数开始,到到main函数结束。函数结束。B)本程序文件的第一个函数开始本程序文件的第一个函数开始,到本程序文件的到本程序文件的最后一个函数结束。最后一个函数结束。C)本程序的本程序的main函数开始函数开始,到本程序文件的最后一到本程序文件的最后一个函数结束。个函数结束。D)本程序文件的第一个函数开始本程序文件的第一个函数开始,到本程序到本

20、程序main函函数结束。数结束。选择题2、以下叙述不正确的是()。A)一个C源程序可由一个或多个函数组成。B)一个C源程序必须包含一个main函数。C)在C程序中,注释说明只能位于一条语句的后面。D)C程序的基本组成单位是函数。3、C语言规定:在一个源程序中,main函数的位置()。A)必须在程序的开头。B)必须在系统调用的库函数的后面。C)可以在程序的任意位置。D)必须在程序的最后。4、一个C语言程序是由()。A)一个主程序和若干子程序组成。B)函数组成。C)若干过程组成。D)若干子程序组成。分析下面程序的运行结果main()int a,b,df;a=200;b=50;df=a-b;prin

21、tf(“df=%dn”,df);程序分析1、为一个学生管理信息系统设计一个界面,显示下列菜单:Menu=1.Input names and scores2.Search scores of students3.Modify scores of some students4.List all information5.Quit=Please input your choice(1-5):2、编程求三个数的和。3、编程求两个数中较大的数。4、由键盘输入一个长方体的长宽高,求长方体的体积。动手编程本章小结 1如何学C语言 2.动手最重要 作业C语言程序设计语言程序设计教学做一体化教学做一体化 主编主

22、编 滕泓虬滕泓虬 中国水利水电出版社中国水利水电出版社 模块三模块三 顺序结构程序设计顺序结构程序设计 3.1 程序的三种基本结构程序的三种基本结构 学习目标学习目标(1)了解结构化程序的三种基本结构。)了解结构化程序的三种基本结构。(2)掌握)掌握C程序语句的几种类型。程序语句的几种类型。(3)掌握顺序结构程序设计。)掌握顺序结构程序设计。TC IDETC IDE 结构化程序的三种基本结构是:顺序结构、选择结构和循环结构。其中,顺序结构是按照语句的先后顺序逐条执行的,所以说它是最基本,也是最简单的程序结构。TC IDEC程序语句可分为:控制语句和非控制语句两大类。其中控制语句是完成一定的控制

23、功能的,可分为以下4类:条件转移语句:有if语句和switch语句。循环控制语句:有for语句、while语句和do-while语句。无条件转移语句:goto语句。其他控制语句:continue、break和return语句。非控制语句也可以分为4种:函数调用语句。表达式语句。空语句。块语句。TC IDE实例实例3_1 函数调用语句举例。main()/*主函数*/clrscr();/*此行是一个函数调用语句,表 示清除屏幕内容*/printf(“Welcome to study C Program.”);/*此行是一个函数调用语句*/实例驱动实例驱动运行这个程序,在屏幕上显示一行英文:运行这个

24、程序,在屏幕上显示一行英文:Welcome to study C Program.实例分析:实例分析:(1)本例中主函数有两个语句,均是函数调用语句,所谓函数调用语句是由函数调用加分号组成的语句。(2)clrscr()是清屏函数,其作用是将屏幕上位于此语句前的所有输出清空,让我们更好地观察本程序本次的运行结果。(注意,C语言的语句应放到变量定义的后面,否则编译会出现“Expression syntax in function main”表达式语法错误的提示。)(3)程序中常用的缩进格式有两种,前面章节中使用的是花括号独占一行缩进对齐的格式,本章使用的是另一种格式,同学们可根据自己的喜好选择其中

25、一种。实例实例3_2 空语句和块语句举例。#includemain()int x=1;/*(5)行是一个空语句*/printf(“x in main()=%d n”,x);/*(6)行输出x的值*/*(7)行定义代码块*/int x=300;/*(8)行在块内定义变量x,与块外变量x同名*/printf(“x in block=%d n”,x);/*(9)行输出块内x的值*/*(10)行代码块结束*/程序运行结果如下:x in main()=1 x in block=300实例分析:实例分析:(1)在第5行中定义了一个空语句,所谓空语句就是什么操作都没有,或称空操作,形式上仅由一个分号组成。虽

26、然空语句没有实际意义,但在语法上却是合法的。(2)在第6行中输出的是在块外定义的主函数中的局部变量x的值,即1。(3)第7行是代码块的开始。(4)第8行在代码块中定义了一个和与块外变量x同名的变量。它们在内存中是占据不同的存储单元,是两个变量。(5)在第9行输出的是块内的变量x,其值是300。块内变量x将块外变量x屏幕了,即在块内范围,起作用的是块内变量。(6)块语句是由一对花括号“”括起来的一组语句,也称为代码块,其在语法上就相当于一个语句。3.2 3.2 格式输入函数与格式输出函数格式输入函数与格式输出函数学习目标:学习目标:(1)掌握格式输入函数的使用。(2)掌握格式输出函数的使用。所谓

27、输入输出是以计算机为主体的。操作系统分别将键盘和显示器定义为标准输入、输出设备。语言的输入输出操作是由函数来实现的,这些函数放在标准I/O函数库中。标准I/O函数库中的一些公用信息是在头文件 中预先定义好的。1 1、格式输入函数、格式输入函数scanfscanf函数函数功能:等待用户从键盘上输入数据,然后按格式控制的要求对数据进行转换后送到相应的变量地址中去。格式:scanf(“格式控制格式控制”,地址表列地址表列)说明:、由“格式控制”部分控制输入的数据按确定的格式送到相应变量的地址单元中;、“地址表列”由若干个地址组成,可以是变量的地址或字符串的首地址。scanf(%d%d%d,&a,&b

28、,&c);scanf(%d%d%d,a,b,c);格式字符说明d用来输入带符号的十进制整数o用来输入无符号的八进制整数x用来输入无符号的十六进制整数c用来输入单个字符s用来输入字符串,将字符串送到一个字符数组中,在输入时以非空白字符开始,以第一个空白字符结束。字符串以串结束标志0作为最后一个字符。f用来输入实数,可以用小数形式或指数形式输入e与f作用相同,e与f可以相互替换格式控制符:以%开始,以一个格式字符结束。实例实例3_3 从键盘上输入三个整数,求它们的和及平均值。#includemain()int a,b,c,sum;/*定义四个整型变量*/scanf(“%d,%d,%d”,&a,&b

29、,&c);/*调用scanf函数从键盘输入三个整数,并依次赋值*/*给变量a、b、c*/sum=a+b+c;/*求a、b、c三个数相加后的值赋给变量sum*/printf(“sum=%d n”,sum);程序运行情况如下:10,20,30 sum=60实例分析:实例分析:(1)scanf(“%d,%d,%d”,&a,&b,&c);语句中双引号引起的部分称“格式控制”,%d表示用来输入十进制整数。本语句表示输入三个十进制整数,并依次送到相应变量的地址单元中;&表示变量的内存地址。(2)“地址表列”由若干个地址组成,可以是变量的地址或字符串的首地址。如果将scanf语句写成:scanf(“%d,%

30、d,%d”,a,b,c);则是不对的。虽然程序在编译时不报错,但是变量a,b,c不能正确获得输入的值。初学者容易犯此错误,要注意。(3)要注意scanf()中的格式控制部分,三个%d之间是由逗号间隔的,因此,在输入三个整数时也要用逗号做间隔。如果将scanf语句改为:scanf(“%d%d%d”,&a,&b,&c);即当格式控制部分不含其它字符的,输入数据时,两个数据之间以一个或多个空格、Tab键或回车键分隔。(4)格式控制部分出现的普通字符(包括转义字符形式的字符),务必原样输入。例如:scanf(“a=%d,b=%d,c=%d”,&a,&b,&c);正确的输入操作为:a=10,b=20,c

31、=30。在%和格式字符之间可插入附加的格式说明符。字符说明l用于输入长整型数据(可用%ld、%lo、%lx)以及double型数据(用%lf或%le)h用于输入短整型数据(可用%hd、%ho、%hx)m(正整数)域宽,指定输入数据所占宽度(列数)*表示本输入项在读入后不赋给相应的变量注意:如果在“格式控制”的字符串中除格式控制符之外还有其它字符,则在输入时应输入相同的字符。scanf(%d,%d,&a,&b)12,34 scanf(%d%d,&a,&b)12 34Eg217.c scanf(%d:%d:%d,&a,&b,&c)12:34:562.2.格式输出函数格式输出函数printfprin

32、tf函数函数printf函数的作用:向计算机系统默认的输出设备(一般指终端或显示器)输出一个或多个任意类型的数据。printf函数的一般格式如下:格式:printf(“格式字符串格式字符串”,输出项表,输出项表)实例实例3_5 已知圆半径radius=1.5,求圆周长和圆面积。main()float radius,length,area,pi=3.14159;radius=1.5;length=2*pi*radius;/*求圆周长*/area=pi*radius*radius;/*求圆面积*/printf(“radius=%fn”,radius);/*输出圆半径*/printf(“length

33、=%7.2f,area=%7.2fn”,length,area);/*输出圆周长、面积*/程序运行结果如下:radius=1.500000 length=9.42,area=7.07实例分析:实例分析:(1)格式指示符:printf(“length=%7.2f,area=%7.2fn”,length,area);中的f是格式指示符。格式指示符的一般形式如下:%宽度.精度 类型。本例中7.2f中的7表示总位宽,其中2表示保留小数点后两位小数,f表示以浮点数格式输出。(2)转义字符:printf()函数中的n就是转义字符,输出时产生一个“换行”操作。(3)普通字符:除格式指示符和转义字符之外的其它

34、字符。普通字符是原样输出的。如printf(radius=%fn,radius);语句中的“radius=”,“printf(length=%7.2f,area=%7.2fn,length,area);”语句中的“length=”、“area=”等都是普通字符。4)输出表项:输出项表是可选的。如果要输出的数据不止1个,相邻2个之间用逗号分开。下面的printf()函数都是合法的:printf(I am a student.n);printf(%d,3+2);printf(a=%f,b=%5dn,a,a+3);必须强调:“格式字符串”中的格式指示符,必须与“输出项表”中、输出项的数据类型一致,否

35、则会引起输出错误。转义字符含义ASCII值0表示字符串结束0n换行,将当前位置移到下一行开头10t水平制表(跳到下一个Tab的位置)9v垂直制表11b左退一格,将当前位置移到下一行开头8r回车,将当前位置移到本行开头13f换页,将当前位置移到下页开头12a响铃7单引号39双引号34反斜杠“”92ddd1到3位八进制数代表的字符xhh1到2位十六进制所代表的字符实例实例3_6 类型转换字符d的使用以带符号的十进制整数形式输出。main()int num1=256;long num2=123456;/*用3种不同格式,输出int型数据num1的值*/printf(num1=%d,num1=%6d,

36、num1=%-6d,num1=%2dn,num1,num1,num1,num1);/*用3种不同格式,输出long型数据num2的值*/printf(num2=%ld,num2=%8ld,num2=%5ldn,num2,num2,num2);程序运行结果如下:num1=256,num1=256,num1=256,num1=256num2=123456,num2=123456,num2=123456动手实践动手实践编写程序,用printf(%d,%o,%xn,-1,-1,-1);语句将-1用三种不同的格式字符输出,看看得到什么输出,试分析结果。实例实例3_7 类型转换字符f的使用。main()f

37、loat f=123.4567;double d1,d2;d1=1111111111111.111111111;d2=2222222222222.222222222;printf(%f,%12f,%-12f,%3f,%12.2f,%.2fn,f,f,f,f,f,f);printf(d1+d2=%fn,d1+d2);程序运行结果如下:123.456703,123.456703,123.456703,123.456703,123.46,123.46 d1+d2=3333333333333.333010实例分析:实例分析:(1)本案例程序的输出结果中,%f格式是按照浮点数的默认格式输出,小数点后保留

38、6位小数。数据123.456787和3333333333333.333010中的87和010都是无意义的,因为float类型的有效数字一般是7位,double类型的有效数字一般是16位。(2)%mf,当指定的列宽m大于数据总列宽时,在左边补空格,使得空格数加数据长度达到总列宽m(小数点占1位);%-mf表示在右边补足空格。(3)%mf,当指定列宽m小于数据总列宽时,突破列宽m的限制,按浮点数的默认格式输出,即保留6位小数位。(4)%m.nf,先取n位小数位,再按总列宽m输出,规定同(3)。另,%.2f只规定精度不规定总列宽的情况,按指定精度取2位小数位后原样输出。当没有指定精度n时,总是保留6

39、位小数位的。实例实例3_8 类型转换字符c的使用输出一个字符。main()char c=A;int i=65;printf(c=%c,%3c,%dn,c,c,c);printf(i=%d,%c,i,i);程序运行结果如下:c=A,A,65 i=65,A实例分析:实例分析:(1)在C语言中,整数可以用字符形式输出,字符数据也可以用整数形式输出,即整型与字符型赋值相容。将整数用字符形式输出时,系统首先求该数与256的余数,然后将余数作为ASCII码,转换成相应的字符输出。(2)%c格式其余输出控制情况和%d格式类似。实例实例3_9 类型转换字符s输出一个字符串。main()printf(“%3s,

40、%7.2s,%.4s,%-5.3sn,“CHINA”,“CHINA”,“CHINA”,“CHINA”);程序运行结果如下:CHINA,CH,CHIN,CHI实例分析:实例分析:(1)其中第三个输出项,格式说明为“.4s”,只指定了n,没指定m,自动使mn=4,故占4列,输出CHIN。(2)系统输出字符和字符串时,不输出单引号和双引号。(3)%s其余输出控制情况和%d格式类似。3.3 3.3 字符输入函数与字符输出函数字符输入函数与字符输出函数 getchar()和putchar()是一对用于单个字符输入输出的标准函数。使用标准I/O库函数时,要用预编译命令“#include”将“stdio.h

41、”文件包括到用户源文件中。1.putchar()函数功能:在终端的当前位置输出一个字符格式:putchar(字符变量)或putchar(输出字符)实例实例3_10 putchar函数的格式和使用方法。#include stdio.h/*编译预处理命令:文件包含*/main()char ch1=W,ch2=I,ch3=N;/*定义三个字符变量,并赋初值*/putchar(ch1);putchar(ch2);putchar(ch3);putchar(n);/*换行*/putchar(ch1);putchar(n);putchar(ch2);putchar(n);putchar(N);putchar

42、(n);程序运行结果如下:WIN W I N实例分析:实例分析:(1)putchar(ch)参数ch可以是一个字符变量或常量,也可以是一个转义字符。当是转义字符时,(2)putchar函数只能用于单个字符的输出,且一次只能输出一个字符。(3)在程序中使用putchar函数,要记住:在程序的开头要加上编译预处理命令#include stdio.h,表示要使用的函数,包含在标准输入输出(stdio)头文件(.h)中。2.getchar()函数功能:从终端输入一个字符说明:无参数;程序暂停运行,等待从键盘上输入一个字符,再回车;通过赋值语句将函数的返回值送到某一字符型变量中。实例实例3_11 get

43、char 函数的格式和使用方法。#include main()char ch;ch=getchar();/*等待用户从键盘上输入一个字符,并将该字符赋值给字符变量ch*/putchar(ch);实例分析:实例分析:(1)ch=getchar();用户输入时,只有在按“回车”键之后输入才生效。(2)getchar函数只接收一个字符,而不是一串字符。(3)和putchar函数一样,使用getchar函数需要加上编译预处理命令:#include。3.3.字符串输出字符串输出putsputs函数函数 gets()和puts()是两个专门用于字符串输入输出的函数,都可以带一个字符型数组名或字符型指针变量

44、作为函数参数。puts()函数函数作用:将一个字符串输出到终端格式:puts(字符数组名)实例实例3_12 puts函数的格式和使用方法。#include main()char str20=China Beijing;/*定义一个字符数组str,并初始化*/puts(str);输出结果为:China Beijing实例分析实例分析:(1)使用puts函数需要加上编译预处理命令:#include。(2)字符数组我们还没学到,本例中,我们只需理解语句char str20=China Beijing;的作用是定义一个字符数组str,数组的内容是China Beijing即可。4、字符串输入字符串输入

45、gets函数函数作用:从终端输入一个字符串到字符数组格式:gets(字符数组名)#include main()char str20;gets(str);puts(str);Eg219.c注意:scanf()函数在接收字符串时,以空格或回车符作为分隔符;而gets()函数仅以回车符作为结束符。所以输入带空格的字符串时候必须用gets()函数。实例实例3_13 gets函数的格式和使用方法。#include main()char str20;/*定义一个字符数组str*/gets(str);/*从键盘输入一串字符,并赋给数组str*/puts(str);/*输出数组str的内容*/程序运行情况如下

46、:I am a C programmer.I am a C programmer.动手演练动手演练基础练习基础练习一 选择题1、C语言程序的三种基本结构是()。A)函数体、语句、声明。B)顺序、选择、分支。C)顺序、选择、循环。D)顺序、选择、重复。2、以下说法不正确的是()。A)C语言的每一个语句都是以分号结束的。B)块语句在语法上相当于一个语句。C)用scanf函数和gets函数来获取一个字符串,其效果是相同的。D)在使用scanf和printf 函数时,在源程序中可以不添加命令行#include。3、以下能用于输出字符串的一组函数是()。A)gets()和printf()B)puts()

47、和printf()C)gets()和puts()D)puts()和putchar()二 程序分析1、下面程序的运行结果是:main()int a=3,b=5;a=30;b=50;printf(“a=%d,b=%dn”,a,b);2、写出程序的运行结果:#includemain()int x=7;int x=360;printf(“x=%d n”,x);printf(“x=%d n”,x);3、程序的运行结果是:main()float f=88.33446;printf(%f,%12f,%-12f,%5f,%12.3f,%.2fn,f,f,f,f,f,f);4、以下程序执行结果是:main()p

48、rintf(“%s,%8s,%.3s,%-8.3sn,“Google”,“Google”,“Google”,“Google”);C语言程序设计教学做一体化C语言程序设计语言程序设计教学做一体化教学做一体化 主编主编 滕泓虬滕泓虬 中国水利水电出版社中国水利水电出版社模块四 选择结构程序设计C语言程序设计教学做一体化 本模块介绍C语言的关系运算、逻辑运算以及用作选择的if语句和switch语句。学习本模块应能掌握关系运算和逻辑运算的操作,并能够用if和switch语句编制具有选择结构的程序。选择结构是结构程序设计所采用的三种基本控制结构之一,另外两种是顺序结构和循环结构。在编程序时,有时并不能保

49、证程序一定执行某些指令,而是要根据一定的外部条件来判断哪些指令要执行。在计算机程序中可以根据不同的条件执行不同的代码段,这就是选择结构。C语言程序设计教学做一体化4.1 4.1 关系运算符与关系表达式关系运算符与关系表达式学习目标1、掌握C语言中的关系运算符2、掌握关系运算符的优先级3、掌握关系表达式的使用4、理解“=”与“=”的区别C语言程序设计教学做一体化知识链接 1、在语言中有6个二元的关系运算符:(小于)、(大于)、=(大于或等于)、=(等于)、!=(不等于)。2、运算规则:两个操作数进行比较,若条件满足,则结果值为1;否则为0。3、结合方向:从左至右。4、优先级(从高到低排列):(1

50、)算术运算符(2),=(3)=和!=(4)赋值运算符。C语言程序设计教学做一体化案例4-1 区分关系运算符“=”和赋值运算符“=”#include void main()int x,y,z1,z2;x=2;y=2;z1=(x=y);/*先把y的值赋给x,然后再把x的值赋给z1*/z2=(x=y);/*先判断x与y的值是否相等,再把结果赋给 z2*/printf(z1=%d,z2=%dn,z1,z2);运行这个程序,结果是:z1=2,z2=1C语言程序设计教学做一体化4.1.2 4.1.2 关系表达式关系表达式 多种运算符在一个表达式中混合使用。案例程序案例程序#include stdio.h

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

当前位置:首页 > 办公、行业 > 各类PPT课件(模板)
版权提示 | 免责声明

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


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

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


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