《C语言程序设计》教案总课时数:114适用专业:计算机应用技术、计算机网络系(部)名称:软件工程系教研室名称:修订时间:1授课日期:第1周周一5—8周三1—2第2周周一5—8周三1—2授课类型:演示、讲解、练习、辅导课时:12教学内容:1、C语言的历史和特色2、C程序结构3、C程序的开发过程教学目标:1、了解C语言的产生过程2、掌握C程序结构3、掌握C程序开发过程4、掌握用TurbocC运行一个C程序教学重点:1、掌握C程序的基本结构构成2、学会用TurboC运行一个C程序教学难点:掌握C程序的开发过程教学过程:内容讲授学生实践作业布置新课内容预告教学手段:多媒体教学软件+个别辅导作业:2第1章C语言概述C语言是国际上广泛流行的一门高级程序设计语言,具有语言简洁、使用方便灵活、移植性好、能直接对系统硬件和外围接口进行控制等特点。本章将简要地介绍它的产生过程和特点、C程序结构及C程序的上机步骤,以便对C语言有一个概括的认识。1.1C语言的历史和特色一、历史1.1960年出现了ALGOL60。2.1963年和1967年,在ALGOL60的基础上推出了CPL和BCPL语言更接近于硬件。3.1970年美国贝尔实验室对BCPL语言做了进一步简化,设计了B语言,并用B语言编写了第一个UNIX操作系统。4.在1972年至1973年间,贝尔实验室的D.M.Ritchie在B语言的基础上设计出C语言。二、特色1.简洁紧凑,使用方便灵活C语言一共只有32个关键字、9种控制语句,程序书写自由,压缩了一切不必要的成分,语言简练。2.运算符丰富C语言有34种运算符和15个等级的运算优先顺序,使表达式类型多样化,可以实现在其它语言中难以实现的运算。3.数据类型丰富C语言的数据类型有整型、实型、字符型、数组类型、指针类型、结构体类型、联合体类型及枚举类型等,能用来实现各种复杂的数据结构的运算。4.模块化结构C语言用函数作为程序的模块单位,便于实现程序的模块化,而且便于模块间相互调用及传递数据。5.语法限制少和程序设计自由度大C语言允许程序编写者有较大的自由度,放宽了以往高级语言严格的语法检查,较好地处理了“限制”与“灵活”这一对矛盾。36.比较接近硬件C语言允许直接访问物理地址,能进行位操作,能实现汇编语言的大部分功能,可以直接对硬件进行操作。7.生成目标代码质量高、程序执行效率高一般只比汇编程序生成的目标代码效率低10%―20%。8.可移植性好基本上不做修改就能用于各种型号的计算机和各种操作系统。1.2C程序结构下面列出几个简单的C程序来说明C程序的结构特征。例1.1输出一行信息。main(){printf(ThisisfirstCprogramme!\n);}该程序的作用是输出一行信息:ThisisfirstCprogramme!main表示“主函数”;函数体用大括号{}括起来。本例题中主函数仅包含一个语句,该语句由printf()输出函数构成。括号内双引号中的字符串按原样输出;´\n´是换行符,即在输出ThisisfirstCprogramme!后回车换行;语句后面有一个分号,表示该语句结束,这个分号必不可少。例1.2计算两个数之和。main()/*求两个数之和*/{inta,b,sum;/*定义3个整型变量*/a=123;/*以下3行为C语句*/b=321;sum=a+b;printf(sumis%d\n,sum);}该程序的作用是求两个整数a和b之和sum,并在屏幕上输出sum。程序中,/*……*/表示注释部分,对编译和运行不起作用。第3行是变量说明,使用的a、b和4sum为整型(int)变量。第4行是两个赋值语句,使a的值为123,b为321。第5行使sum的值为a+b,第6行的%d是输入输出的“格式说明”,表示“十进制整数类型”,printf函数中括号内最右端的sum是要输出的变量,当然它的值为444。例1.3比较两个数的大小。main()/*主函数,功能输入两个整数,判断后输出较大的数*/{inta,b,c;/*定义3个整型变量*/scanf(%d,%d,&a,&b);/*输入变量a和b的值*/c=max(a,b);printf(max=%d\n,c);/*输出c的值*/}intmax(intx,inty)/*定义max()函数,函数值为整型,x,y为形式参数、整形变量*/{intz;/*定义main()函数内部用到的变量z为整数*/if(xy)z=x;/*将x,y中较大的值赋给z*/elsez=y;return(z);/*将z值返回。通过max()函数带回调用处*/}该程序的作用是从键盘输入两个整数,然后在屏幕上输出它们中较大值的数。程序的第5行是调用max()函数,在调用过程中将实际参数a和b的值,分别传递给max()函数中的形式参数x和y,然后得到一个返回值(z的值),并把这个值赋给变量c。运行情况如下:2,8↙max=8从以上几个例题,可以看到C程序的结构特征。51.C程序是由函数构成的。一个C程序至少有一个main()函数,也可以包含一个main()函数和若干个其它函数。2.一个函数有两部分构成。函数说明部分,即函数的第一行,包括函数类型、函数名、形参类型、形参名。函数体,由一对大括号{}括起来的语句集合。函数体一般包括有声明部分和执行部分,声明部分用于定义所用到的变量,执行部分由若干语句组成。3.一个C程序总是从main()函数开始执行,而不管main()在源程序中的位置,执行完主函数中的所有语句后,程序就结束。4.每个语句和变量定义的最后必须要有一个分号,分号是C语句的必要组成部分。5.C语言本身没有提供输入和输出语句,输入输出操作是通过库函数scanf()、printf()等函数来实现的。6.C语言用/*……*/对程序进行注释,/和*之间不允许留有空格,/*和*/应当一一对应匹配,注释部分允许出现在程序中的任何位置上。程序中加一些注释,可以增加程序的可读性。1.3C程序的开发过程用C语句编写的程序称为“源程序”。1.C程序开发的4个基本步骤一般C程序开发要经历4个基本步骤:编辑——编译——连接——运行(1)编辑使用字处理软件或编辑工具将源程序以文本文件形式保存到磁盘,源程序文件名由用户自己选定,但扩展名必须为.c。(2)编译编译的功能就是调用“编译程序”,将已编辑好的源程序翻译成二进制的目标代码。如果源程序没有语法错误将产生一个与源程序同名,以.obj为扩展名的目标程序。(3)连接编译后产生的目标程序往往形成多个模块,还要和库函数进行连接才能运行,连接过程是使用系统提供的“连接程序”运行的。连接后,产生以.exe为扩展名的可执行程序。(4)运行6可执行程序生成后,就可以在操作系统的支持下运行,若执行结果达到预期的目的,则开发工作到此完成,否则,要进一步地经过以上过程以取得最终的正确结果。2.使用TurboC开发程序的方法现在,多数的C程序开发使用一个集成TurboC开发工具来完成。下面简单介绍使用TurboC开发程序的方法。(1)TurboC的目录及文件TurboC应装入磁盘的某一目录下,例如,放在c盘的根目录下一级TC子目录下,TurboC安装完成后,磁盘上将增加以下目录及文件:TC子目录(c:\tc):其中包括tc.exe、tcc.exe、make.exe等执行文件。INCLUDE子目录(c:\tc\include):其中包括stdio.h、string.h、math.h等头文件。Lib子目录(c:\tc\lib):其中包括graphlics.lib、math.lib、math1.lib等库函数文件。BGI子目录(c:\tc|bgi):其中包括tc运行时所需的信息。通过执行tc.exe命令就可以进入TurboC环境,如果用户的当前目录是TurboC所在的子目录tc,则只需从键盘输入“tc”命令即可。C:\tctc↙(2)TurboC集成环境作简单介绍,它包括以下几个方面的内容:主菜单窗口编辑窗口信息窗口功能键提示行3.用TurboC运行第一个C程序下面介绍使用TurboC编辑和运行一个简单的C程序的操作步骤:(1)编辑或修改源程序。在编辑窗口键入一下源程序:main(){printf(ThisismyfirstCprogram);}然后执行“File/save”命令;或按“F2”键存盘。7(2)编译与连接源程序。执行“compile/makeexefile”命令或直接按下F9键,即可一次完成编译与连接。(3)运行程序。按“F10”键返回主菜单,用光标移动键将亮条移到“Run”菜单选项回车或按下“Ctrl+F9”键,即可运行刚生成的可执行文件。此时TurboC工作窗口消失,屏幕上显示程序运行结果:ThisismyfirstCprogram若发现运行结果不对,可再按“F10”键回工作窗口,重复上述步骤。(4)运行程序后查看程序的运行结果。(5)退出TurboC,按“Alt+X”键,系统即退出Turbo环境。本章小结本章对C语言进行了总体介绍,对学生的要求是掌握基本概念,学习的过程要紧密结合本章的知识要点:1.程序的构成,main()函数和其他函数。2.头文件、数据说明、函数的开始和结束标志。3.源程序的书写格式。4.C语言的风格。8授课日期:第3周周三1—2第4周周一5—8周三1—2第5周周一5—8周三1—2授课类型:演示、讲解、练习、辅导课时:14教学内容:1、常量和变量2、整型数据3、实型数据4、字符型数据5、变量的初始化6、运算符和表达式教学目标:1、掌握常量与变量的书写和定义2、掌握三种基本数据类型3、掌握运算符和表达式的使用4、掌握顺序结构程序设计的方法教学重点:1、三种基本数据类型的定义和使用2、各种运算符的使用教学难点:1、运算符的使用2、使用顺序结构编程教学过程:内容讲授学生实践作业布置新课内容预告9教学手段:多媒体教学软件+个别辅导作业:1、编程序,用getchar函数读入两个字符给c1、c2,然后分别用putchar函数和printf函数输出这两个字符。上机运行此程序,比较putchar和printf函数输出字符的特点。2、试编写程序,从键盘输入一个大写字母,要求改用小写字母输出。10第2章顺序结构程序设计顺序结构是一组按书写顺序执行的语句。本章将主要介绍程序中用到的一些基本要素(常量、变量、运算符、表达式和输入输出语句等),以及基本的数据类型(整型、实型和字符型)。2.1常量和变量一、常量1.常量:在程序运行的过程中,其值不能被改变的量。如2、4、-1.6等。2.分类:普通常量和符号常量。3.符号常量:用一个标识符代表一个常量,这样的标识符称为符号常量。如用PI代表3.1415926。4.注意:符号常量的值在其作用域内不能改变,也不能再被赋值。如在程序中,对PI重新赋值:PI=2;这样是不允许的。二、变量1.变量C语言规定在程序运行的过程中,其值可以改变的量,称为变量。2.标识符:用来标识变量名、符号常量名、函数名、数组名、类型名和文件名的有效字符序列。3.C语言规定:标识符只能由字母、数字和下划线三种字符组成,且第一个字符必须为字母或下划线。一般变量名的长度不能超过8个字符。如下面是合法的标识符,也是合法的变量名:sum,average,day,month,student,_above,k_1_2_3,basic;下面是不合法的标识符和变量名:M.D.John,$123,#33,3D64,a,-ab。在C语言中,要求对所有用到的变量作强制定义,也就是″先定义,后使用″。2.2整型数据一、整型常量C语言整型常数可用以下三种形式表示:1.十进制整数:数码直接开头的十进制数。2.八进制整数:以0开头的常量是八进制数。113.十六进制整数:以0x开头的数是16进制数。二、整型变量1.整型变量的分类整型变量可分为:基本型、短整型、长整型和无符号型四种,其定义的关键字如下:(1)基本型,以int表示。范围为-32768~32767,即-215~(215-1)。(2)短整型,以shortin