C语言教案(168课时)_第1页
C语言教案(168课时)_第2页
C语言教案(168课时)_第3页
C语言教案(168课时)_第4页
C语言教案(168课时)_第5页
已阅读5页,还剩124页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、c语言程序设计授课教师:胡 琪 授课教师:09计1班教学计划一、学生基本情况09计1班,22人,是对口高考班,由于是刚进高一,还没有接触过任何的编程知识,甚至有些学生以前接触电脑的机会比较少,基础较差,但整体上还是很好学的,毕竟深知c语言是参加对口高考很重要的一门科目。二、教学要求1.掌握c语言的主要特点、结构、程序编写的规则、开发的过程;2.掌握c语言的基本数据类型、运算符、表达式的应用,常用函数的使用;掌握顺序程序设计,会编写简单的程序;3.掌握三种if语句的使用形式、流程、功能;学会使用switch语句;4.掌握循环结构程序设计的方法,包含三种不同循环结构的应用方法以及这三种循环的异同点

2、。三、教学重点1.c语言基本数据类型、运算符、表达式的应用;2.常用函数的使用;3.顺序结构、选择结构、循环结构的程序设计方法。四、教学难点1.c语言程序的编写规则、开发过程;2.顺序结构、选择结构、循环结构的程序设计方法及退出循环的方法。五、主要教学方法、措施1.按照学生的认识规律,以程序设计为主线,采用循序渐进的方式,用通俗易懂的语言结合生活中的实例讲解c语言的基础知识、程序设计方法;2.结合实验法精心安排实验,采用任务驱动式的方法即从学生实际水平出发布置难度适当的任务引导学生完成并驱动学生学习新的知识;3.加强课后辅导,要求学生按时完成作业,及时认真批改作业,发现问题及时纠正。六、教学进

3、度教 学 进 度 安 排周 次主 要 教 学 内 容1c语言基础2c语言的数据类型3基本输入输出函数4算术运算符、表达式5关系运算符、表达式6顺序结构程序设计7逻辑运算符、表达式8单分支选择结构程序设计(1)9单分支选择结构程序设计(2)10期中考试与复习11多分支选择结构程序设计(1)12多分支选择结构程序设计(2)13多分支选择结构程序设计(3)14循环结构程序设计(1)15循环结构程序设计(2)16程序填空题训练(1)17程序填空题训练(2)18编程题训练(1)19编程题训练(2)20期末考试实训计划一、实训目标从应用和实践的角度出发,使学生通过上机操作掌握本课程的程序设计思想,达到能独

4、立编写c语言应用程序的要求,为提高学生的实际编程能力,进一步学习其他程序设计语言打下基础。二、教材内容分析本教材以turboc 2.0为运行环境讲解c语言程序运行开发过程,要求学生掌握基本操作,通过上机检验程序运行结果,从而掌握程序设计的思想与方法。三、具体专业技能要求1.学会编辑、运行简单的c语言程序;2.掌握定义数据类型的方法及赋值的方法,学会使用包含运算符的表达式,掌握输入输出函数的使用;3.掌握顺序结构、选择结构、循环结构的程序设计方法。四、技能教学主要措施1.精选实验内容,要求学生独立完成程序编写;2.学生上机编辑和调试程序,引导学生多方位地考虑问题;3.对基础薄弱的学生进行指导,对

5、能提前完成实验任务的学生提出更高的要求;4.要求学生将自己的实验情况进行分析、总结,整理出实验报告。五、教学进度安排教 学 进 度 安 排周 次主 要 教 学 内 容1熟悉c语言运行环境2编辑、调试、运行简单的c语言程序3基本输入输出函数4算术运算符、表达式5关系运算符、表达式6顺序结构程序设计7逻辑运算符、表达式8单分支选择结构程序设计(1)9单分支选择结构程序设计(2)10期中考试与复习11多分支选择结构程序设计(1)12多分支选择结构程序设计(2)13循环结构程序设计(1)14循环结构程序设计(2)15程序填空题训练(1)16程序填空题训练(2)17编程题训练(1)18编程题训练(2)1

6、9编程题训练(3)20期末考试第12课时教学课题:c语言基础教学目的:1.让学生明确c语言在程序设计语言发展中的地位和学习这门课的目的;2.了解简单c程序的特点和结构;3.熟练掌握创建、修改、运行c程序的操作方法,为学生进一步的学习打下基础。教学重点和难点:1.简单c程序的特点和基本结构;2.创建、修改、运行c程序的操作步骤和方法。教学方法:讲授法、任务驱动式课时:2课时第一课时教学过程:l 提出疑问,启发学生思考:人与人之间用语言来交流,那么人与计算机交流用什么呢?c语言就发挥了作用,从而导入新课。1.程序设计语言经历的发展阶段2.c语言在发展阶段(过程)中所处的地位3.c语言的特点l 在了

7、解了c语言的发展后,着重讲解c程序的基本结构和书写格式:库函数根据用户需要编制的函数1.c程序由函数构成,一个c程序至少一个main函数或一个main函数和若干个其他函数。被调用的函数2.一个函数由两部分组成。函数的首部。如:int min(int x,int y)声明部分执行部分函数体3.一个c程序总是从main函数开始执行。4.c程序书写格式自由。5.每个语句和数据定义的最后必须有一个分号。如:c=a+b;6.c语言本身没有输入输出语句,输入输出的操作是由库函数scanf和printf函数来完成的。7.可以用/* */对c程序中的任何部分做注释。l 接下来给出一个实例结合上述结构讲解:例:

8、main()int a,b,c;scanf(“%d %d”,&a,&b);c=max(a,b);printf(“max=%d”,c);int max(int x,int y)int z;if(xy)z=x;else z=y;return(z);请学生上讲台指出函数的各个组成部分,其他学生补充。第二课时教学过程:l 讲授新课一、turboc的与退出(要求学生以自学为主)1.启动turboc的步骤开机启动dos操作系统启动中文操作系统进入工作目录,执行命令:cd c:、xxc启动turboc系统2. turboc界面上的菜单命令简介(功能和快捷键)3.退出前保存的方法二、创建和运行c程序的一般步骤

9、1.创建新文件2.输入源程序3.保存源程序4.运行程序5.观察程序运行结果生成源文件 (生成*.c文件)编辑源程序编译源文件生成目标文件夹 (生成*.obj文件)连接目标文件、库文件生成可执行文件夹 (生成*.exe文件)运行可执行文件产生运行结果三、c语言程序的开发过程l 回顾本节课知识点,总结归纳l 布置作业1.c语言程序的基本构成2.c程序的开发过程3.输出如下信息(编程实现)* * * * * * * * * very good* * * * * * * * * 第3课时实验课题:启动与退出turboc,熟悉turboc环境实验目的:1.掌握启动与退出turboc编译系统的方法; 2.

10、熟悉turboc运行环境。实验时间:第一周实验内容:1.启动turboc双击tc.exe文件即可进入turboc编译系统2. turboc基本界面认识 菜单项1) 名称2) 功能3) 可用的快捷键 编辑界面行、列、默认文件名程序编辑区信息栏 出错处、出错原因3.退出turboc (alt+x)l 实验小结:由于学生第一次上机,接触到turboc运行环境,整个实验采用多媒体控制教学结合学生实验同时进行,效果较好。第4课时实验课题:创建并运行c语言程序实验目的:1.掌握启动与退出turboc编译系统的方法; 2.使用turboc创建与运行简单c程序的方法。实验时间:第一周实验内容:1.启动turb

11、oc2.创建新文件3.输入源程序,保存main()printf(“this is a program!”);4.编译、连接程序生成目标文件生成可执行文件连接可执行文件5.运行程序6.观察结果l 实验小结:绝大多数学生在经过不同程序的指导后,能如质如量地完成实验。第5课时实验课题:turboc常用编辑键的用法实验目的:掌握turboc常用编辑键的功能和使用用法实验时间:第一周实验内容:1.打开上次实验课保存的程序2.练习使用end键和home键end光标回到本行行末home光标回到本行行首3.编辑程序,将“(”按del键删除,观察出错信息mainprintf(“你好”);4.按f6(或alt+e

12、或enter键)返回编辑窗口,修改程序,让学生注意观察系统约定的对齐方式5.改错,保存程序l 实验小结:这个实验相对难度不大,学生完成情况较好。第6课时实验课题:理解c程序规则实验目的:1.理解使用规范书写程序的优越性2.理解c程序规则实验时间:第一周实验内容:1.(1)输入以下程序mainprintf(“努力学习”);(2)运行程序,观察系统显示的出错信息(3)找出出错原因后,修改程序(4)再次运行,直到得出正确结果2.运行以下程序main()printf(“欲穷千里目”)观察出错信息再按照第1题的方式修改程序要求学生填下面的空:(1)运行该程序,系统显示的出错信息是:_(2)该程序出错的原

13、因是:_3.变量定义与使用规则(1)main()int a=5;printf(“5的平方是:%d”,a*a);运行程序,系统显示的出错信息_该程序的出错原因是_修改程序再次运行,直到得出正确结果(2)main()a=5;printf(“5的平方是:%d”,a*a);修改运行得出正确结果l 实验小结:学生做起来感到吃力,在上机方面要加强练习第78课时教学课题:常量和变量教学目的:让学生熟悉并掌握常量、变量的定义、赋值等操作教学重点和难点:常量和变量课时:两节课第一课时:教学内容:l 新课的引入l 新课的讲解1. 数据类型c语言提供的数据结构,是以数据类型形式出现的,具体分类:1)基本类型分为整型

14、、实型(又称浮点型)、字符型、寄存器型四种2)构造类型分为数组类型、结构类型、共用(枚举)类型3)指针类型4)空类型c语言中的数据,有常量和变量之分。2. 常量1)常量的概念在程序运行过程中,其值不能被改变的量称为常量2)常量的分类(1)整型常量即整常数,在c语言中可用三种形式表示:十进制 例:10.36八进制 例:012 (以数字0开头)十六进制 例:0x36 (以数字0+小写字母x开头)(2)实型常量 例:2.03、0.0、m*10n(3)字符常量 例:a、a、0、1(4)符号常量 例:#define pi 3.1415(5)字符串常量 例:”x”、”i am a srudent”常量的类

15、型,可通过书写形式来差别第二课时3. 变量(1)变量的概念(2)变量的两个要素:变量名(变量必须有一个名字,命名遵循标识符命名规则)变量值4. 变量的定义与初始化在c语言中,要求对所有用到的变量,都必须先定义,后使用;且称在定义变量的同时进行赋初值的操作称为初始化。(1)变量定义的一般格式数据类型 变量名 如:float area;(2)变量初始化的一般格式数据类型 变量名=初值 例:float length=2.5;下面介绍基本类型中的整型、实型和字符型三种变量的定义5. 整型变量定义根据占用内存字节数的不同,整型变量又分为类:基本类型(类型关键字为int)短整型(类型关键字为shortin

16、t)长整型(类型关键字为longint)无符号整型数 无符号基本整型(unsigned int)无符号短整型(unsigned short)无符号长整型(unsigned long)(2)占用内存字节数与值域(见书60页)注意点:长整型数(315l)(3)类型匹配规则一个整型常量,可以赋给能容纳下其值的整型变量。例:其值在-215(215-1)的整型常量,可以赋给int型变量和long int 型变量;其值在231(231-1)的整型常量,就只能赋给long int型变量。例:main()int a=20000,b=30000,c;c=a+b;printf(“c=%dn”,c);运行结果为:c

17、=-15536因为变量c的类型是int型,它所能存放的最大数是32767,而a和b的和50000超出了这个范围,运行结果自然就出错了。6. 实型变量c语言的实型变量,分为两种:(1)单精度型(2)双精度型(1)单精度型:关键字为float,一般占4字节(32位),提供7位有效数字。(2)双精度型:double,一般占8字节,提供1516位有效数字。7. 实型常量(1)表示形式实型常量即实数,在c语言中又称为浮点数,其值有两种表达形式:十进制形式 例如:3.14、9.8指数形式e(e) 例:3.0e+5(2)关于类型实型常量不分float型和double型,一个实型常量可以赋给实型变量(floa

18、t型或double型)l 教学小结:(1)c语言的基本数据类型:char、int、long、float、double;(2)char为字符型,表示一个字节的字符,实质是称为ascii码的八位二进制;(3)int long 表示的是整型数,值的范围不同,int型占两字节;long 占四个字节;(4)float 、double是浮点数,float占4个字节,精度为7位;double占8个字节,精度为15位。l 课堂练习#includemain()char c1=b;int x=10;c1=c1+x;printf(“%c,%dn”,c1,x);l 布置作业1. c语言的基本数据类型有哪些?2. 说出

19、int、long型变量其值的取值范围及存储空间的大小。3. 变量定义的形式,举例说明。第9课时实验题目:理解c程序规则实验目的:1.通过改正程序中的错误,加深对c程序基本规则的理解2.掌握保存文件和编辑下一个程序的操作方法实验时间:第二周实验地点:科教楼实验内容:1.改正程序中的错误main()a=3;printf(“3的平方是:%d”,a*a);(1)运行程序,观察系统显示的出错信息(2)找出出错原因后,修改程序(3)再次运行,直到得出正确结果2. 更正以下程序main()a=3;printf(“3的平方是:%d”,a*a);找出出错原因并改正,保存程序,编辑下一个程序。3. 更正以下程序

20、main()int a=5;printf(“5的平方是:%d”,a*a);找出出错原因并改正,保存程序,编辑下一个程序。第10课时实验题目:printf函数的使用实验目的:掌握printf函数的使用方法实验时间:第二周实验地点:科教楼实验内容:1.建立并运行以下程序,注意观察屏幕显示信息main()float x=2.6;clrscr();printf(“x=%f”,x);2. 建立并运行以下程序,注意观察结果main()int x,y; clrscr();x=y=1;printf(“x=%d,y=%dn”,x,y);l 实验总结:c程序规则关系着(决定着)能否学好c语言,printf函数使用

21、非常频繁,引导学生入门显得举足轻重。第1112课时教学课题:常量和变量(2)教学目的:通过学习,使学生熟练掌握c语言的量教学重点:字符常量和字符变量教学方法:讲解法课时安排:两课时课型:理论课教学过程:第一课时l 复习:1.c语言的数据类型2.整型、实型常量、变量l 新课的讲解:1.字符常量字符常量的定义用一对单引号括起来的单个字符,如:a、+等转义字符c语言中还允许使用一种特殊形式的字符常量,就是以“开头的转义字符。注意:表示, 表示例1:用打印字符输出可打印字符和不可打印字符main()printf(“x4fx4bx21n”);printf(“x15 xabn”);程序输出结果:ok! 1

22、/2例2:设一个输出区占8列,分析输出结果main()printf(“ ab ct derftgn”);printf(“htibbj k”);分析过程如下,加粗的为最后显示的结果abcdefgdehjihjk12345678123456782.字符变量类型关键字为char,一般占用1字节内存单元变量值的存储字符变量用来存储字符常量,将一个字符常量存储到一个字符变量中,实际上是将该字符的ascii码值(无符号整数)存储到内存单元中。例:char ch1,ch2; /*定义两个字符变量:ch1,ch2*/ch1=a;ch2=b; /*给字符变量赋值*/第二课时特性(1)c语言允许字符型数据与整型数

23、据之间通用例2 字符变量的字符形式输出和整数形式出发main()char ch1,ch2;ch1=a;ch2=b;printf(“ch1=%c,ch2=%cn”,ch1,ch2);printf(“ch1=%d,ch2=%dn”,ch1,ch2);(2)允许对字符数据进行算术运算,就是对它们的ascii码值进行算术运算例3 main()char ch1,ch2;ch1=a;ch2=b;printf(“ch1=%c,ch2=%cn”,ch1-32,ch2+32);printf(“ch1+200=%d n”,ch1+200);printf(“ch1+200=%c n”,ch1+200);printf

24、(“ch1+256=%d n”,ch1+256);3.字符串常量(1)概念(2)字符串长度 字符串中字符的个数称为字符串长度,长度为0的字符串(即一个字符都没有的字符串)称为空串,表示为”。例:“how do you do”长度为14;”good morning” 长度为13。如果反斜杠和双引号作为字符串中的有效字符,则必须用转义字符。例:(1) c:msdosv6.22 ” c:msdosv6.22” (2)i say:”goodbye!” “i say:”goodbye!”(3)字符串的存储存储字符串常量时,系统在字符串的末尾自动加一个0作为字符串的结束标志例:“china”在内存中的实际

25、存储china0占6字节而非5字节内存空间l 课堂小结字符常量a与字符串常量”a”的区别(1)定界符不同 字符常量使用单引号,字符串常量用双引号(2)长度不同 字符常量的长度固定为1 字符串常量的长度可以是0,也可以是某个整数(3)存储要求不同l 布置作业1.字符常量与字符串常量的区别2.写出下面程序运行的结果main()int a=1,b=2,sum;sum=a+b;printf(“sum=%dn”,sum);3.写出下面语句的执行结果(1)printf(“nabctdenfghn”);(2) printf(“nwhy is 21+31 equal to %d?n”,21+31);第13课时

26、实验题目:printf函数的使用(1)实验目的:掌握printf函数的使用实验地点:科教楼实验时间:第三周实验内容:1.运行下面的程序main()int a=123;printf(“a=%d n”,a);printf(“a=%x n”,a);printf(“a=%o n”,a);printf(“a=%u n”,a);要求学生观察屏幕显示信息并了解各种输出格式2.运行程序main()char a=”china”;printf(“x=%s n”,a);让学生了解字符串的定义l 实验小结:printf()函数在c语言中用得非常频繁,必须要从严要求学生掌握。第14课时实验题目:printf函数的使用(

27、2)实验目的:进一步掌握printf函数的使用实验地点:科教楼实验时间:第三周实验内容:1.运行下面的程序main()float a=123.456;printf(“a=%e n”,a);printf(“a=%f n”,a);printf(“a=%g n”,a); /*按e和f格式中较短的一种输出不打印无效零*/ 输出结果: 1.23456e+02 123.456001 123.456要求学生观察屏幕显示信息并了解各种输出格式2.运行以下程序并得出结果main()float a=3.1415926;double b=3.1415926533897935;printf(“x=%8.6f nb=%

28、17.15f”,a,b);该程序测试用printf函数输出带小数的float和double型数据时,小数部分是截断还是四舍五入。请学生根据程序运行结果,回答这个问题。第1516课时教学课题:基本输入输出函数(1)教学时间:第三周教学目的:掌握数据的输入输出教学重、难点:掌握数据的输入输出课时安排:2课时课型:理论课第一课时教学目的:要求学生掌握printf()函数教学过程:l 讲授新课1.printf()函数a一般格式:printf(“格式字符串”,输入表项);b功能:按指定的格式向计算机系统默认输出设备输出信息c说明:(1)格式字符串组成以%开头,以转换字符为结尾的转换说明符,必须与输出参数

29、相对应,表示相应的输出参数的输出格式空格、制表符,不作输出转义字符,以开头转义字符为结尾的 例:n输出时产生“换行”操作普通字符除格式指示符和转义字符之外的其它字符 普通字符原样输出格式指示符,一般形式如下:%标志宽度.精度fnhl类型(2)输出项表:要输出的变量符号输出项表是可选的。如果要输出的数据不止1个,相邻2个之间用逗号分开。下面贩printf()函数是合法的。printf(“i am a student.n”);printf(“%d”,3+2); printf(“a=%f b=%5dn”,a,a+3);prinft修饰符修饰符格式说明含义m%md以字段宽m输出整型数据,不足m位,左补

30、空格0m%0md以字段宽m输出整型数据,不足m位,左补空0m.n%m.nf以字段宽m输出实型小数数,小数位为n位l 练习main()int x=123;float y=2.71828;printf(“x=%5dnx=%05dnx=%-5dnx=%2d n”,x,x,x,x);printf(“y=%7.2fny=%-7.2f n”,y,y);l 知识回顾l 教学小结: 输出函数prinft()的使用第二课时教学课题:基本输入输出函数(2)教学时间:第三周教学目的:掌握输入函数scanf()函数教学重、难点:输入函数的使用课型:理论课l 回顾printf()函数l 新课讲授scanf()函数作用:

31、按指定的格式,从键盘上接收输入信息一般格式:scanf(“格式字符串”,输入项首地址表);例:main()float radius,high,vol,pi=3.1415926;printf(“please input radius&high:”);scanf(“%f %f”,&radius,&high);vol=pi*radius*radius*high;printf(“radius=%7.2f,high=%7.2f,vol=%7.2fn”,radius,high,vol);分析程序说明:a、(1)格式字符串:转换说明符,空白字符和普通字符 (2)输入项地址表 b、格式指示符 a。转换说明符

32、b。宽度n m.nl 互动环节:请学生写出例题程序运行结果l 课堂小结:总结scanf()函数的使用l 布置作业:从键盘上输入一个数(圆的半径),求半圆的周长及面积。l 教学小结:scanf()函数的使用,学生初学很容易将取地址符&丢掉,造成程序错误,需加强练习与理解。第17课时实验题目:scanf函数的使用(1)实验目的:掌握scanf函数的使用实验地点:科教楼实验时间:第三周实验内容:1.运行下面的程序,输入:12、w、45.19main()int a;char b;float x;scanf(“%d,%c,%f”,&a,&b,& x);printf(“a=%d b=%c x=%f n”,

33、a,b,x);要求学生观察屏幕显示信息并尝试输入其它数据2.运行程序main()char x,y,z;scanf(“%c,%c,%c n”,&x,&y,&z);printf(“x=%c y=%c z=%c n”,x,y,z);让学生输入字符型数据,观察屏幕显示信息采用两种方法输入:a,b,ca b cl 实验小结:scanf()函数在c语言中用得非常频繁,必须要从严要求学生掌握。第18课时实验课题:scanf函数的使用(2)实验目的:进一步掌握scanf函数的使用实验时间:第三周实验内容:1.运行以下程序main()char x,y,z;scanf(“%c,%c,%c n”,&x,&y,&z)

34、;printf(“x=%c y=%c z=%c n”,x,y,z);要求学生按程序要求输入数据得出正确结果2.用两种方法输入数据a,b,ca b c3.以三种方法输入数据:12,34,56main()int x,y,z;scanf(“%d%d%dn”,&x,&y,&z);printf(“x=%d y=%d z=%d n”,x,y,z); 总结scanf函数输入数据输出结果的规律4.编写一个程序:要求学生从键盘上输入数据(正方形的边长),求出正方形的周长与面积l 实验小结:大部分学生能在指导下正确使用scanf函数,效果良好。第19课时教学课题:基本输入输出函数(3)教学时间:第四周教学目的:掌

35、握输入输出函数教学重点:类型转换符 单个字符的输入输出函数:getchar()、putchar()教学难点:类型转换符的使用教学过程:l 知识回顾printf()函数与scanf()函数的使用l 新课讲授1.格式指示符a类型转换字符d以带符号的十进制整数形式输出b类型转换字符f以小数形式,按系统默认的宽度,输出单精度和双精度实数c类型转换字符c输出一个字符(只占一列宽度)d类型转换字符s输出一个字符串l 课堂练习:main()int num=123;float f=123.456;char c=a;printf(“%d,%f,%c,%10s”,num,f,c,”internet”);print

36、f(“%-5d,%7.2f,%2c,%-8s”,num,f,c,”internet”);l 教学小结:学生对类型转换字符f的宽度理解不透彻,需加强指导与练习。第20课时教学课题:基本输入输出函数(3)教学时间:第四周教学目的:掌握单个字符的输入输出函数教学重点:单个字符的输入输出函数:getchar()、putchar()教学难点:getchar()函数、putchar()函数的使用教学方法:启发式教学、练习法教学过程:l 知识回顾l 新课讲授1.单个字符的输入getchar()函数格式:getchar();作用:将从标准输入设备输入的字符读出,返回值为读出字符的ascii值,出错返回值eof

37、。eof是在标准头文件中定义的一个常量,其值为了-1。例:#include”stdio.h” /*文件包含*/main()char ch;ch=getchar();printf(“ch=%c,ch=%dn”,ch,ch);说明:(1)要使用getchar()函数,必须在程序(或文件)的开头加上编译预处理命令:#include”stdio.h” (2)getchar()函数只能用于单个字符的输入,一次输入一个字符2.单个字符的输出putchar()函数格式:putchar(c);作用:将一字节的代码值所代表的字符输出到显示器上,将参数值中指定的字符送到标准输出设备。返回值为输出字符的ascii码

38、,出错返回值eof。l 练习:#include”stdio.h” /*文件包含*/main()char ch1,ch2,ch3;ch1=getchar();ch2=getchar();ch3=getchar();putchar(ch1);putchar(ch2);putchar(ch3);putchar(n);#include”stdio.h” /*文件包含*/main()char ch1=n,ch2=e,ch3=w;putchar(ch1);putchar(ch2);putchar(ch3);putchar(n);putchar(ch1);putchar(n);putchar(e);putc

39、har(n);putchar(67);putchar(n);l 教学小结: getchar()函数、putchar()函数的使用第2122课时教学课题:算术运算符和算术表达式教学时间:第四周教学目的:掌握算术运算符的运算规则和算术表达式教学重点:算术运算符和表达式教学难点:类型转换教学过程:第一课时l 知识回顾l 新课讲授1. 通过与数学中算术运算符的运算规则与运算符比较,引出c语言中的五种算术运算符 + - * / %说明:(1)+、-、* 三种运算符的运算对象可以是整型和实型;% 运算符的运算对象必须为整型。(2)两个整数相除,商也是整数,舍去小数;如果除法运算符 / 的任何一侧是实型数据

40、,结果是实型。如:5/3=1 3/1=0 5/3.0=1.666667 5.0/3=1.666667例:main()clrscr();printf(nn%d,%dn,20/7,-20/7); printf(%f,%fn,20.0/7,-20.0/7);根据结果加强对除法运算法则的认识(3)%(取余)运算的结果求余运算的结果等于两数相除后的余数,符号与被除数的相同。如:1%3=1 1%-3=1 -1%-3=-1 -1%3=-1 main()clrscr();printf(%dn,100%3); printf(%f,%f,%f n,20.0/7,-20.0/7,-20.0/-7);请学生上台来,根

41、据求余运算的规则写出程序运行结果2. 算术表达式(1)定义(2)优先级a.加、减法运算符优先级相同;b.乘、除、求余运算符优先级相同;c.若同有加、减、乘、除、取余。则先做乘除求余运算,后做加减运算,有括号的先算括号里的。例:a+b(a*2)c(x+r)*8-(a+b)7+isin(x)+sin(y)(+i)-(j+)+(k-)第二课时3. 类型转换 (1)自动类型转换 如果自述表达式中含有字符型和整型数据,则把字符型数据转换为整型数据如果算术表达式中含有整型和实型数据,则把整型数据转化为实型数据,并且所有实型数据都以双精度方式进行运算例:100-a+40.5(2)强制类型转换 其一般形式为:

42、 (类型说明符) (表达式)其功能是把表达式的运算结果强制转换成类型说明符所表示的类型例:(float)a 把a转换为实型 (int)(x+y) 把x+y的结果转换为整型练习:main()int a=5,b=2;printf(a除以b的值:a/b=%dn, a/b);printf(强制类型转换后的结果:a/b=%fn, a/(float)b); printf(当前变量b的值:b=%d n,b);请学生分析运行结果l 布置作业:写出下面程序运行的结果main()int a=5;float b=2.0;printf(a/b=%dn, a/b);printf(a/b=%fn, a/(int)b);

43、printf(b=%f n,b);l 教学小结:算术运算符和表达式的应用第23课时实验课题:getchar()与putchar()函数的使用实验时间:第四周实验地点:科教楼实验目的:熟练掌握getchar()与putchar()函数的使用实验内容:任务:输入三个小写字母,把它们转换成大写字母输出,分析程序运行结果。#includemain()char ch1,ch2,ch3;ch1=getchar();ch2=getchar();ch3=getchar();ch1=ch1-32;ch2=ch2-32;ch3=ch3-32;putchar(ch1);putchar(ch2);putchar(ch

44、3);运行程序时,如果输入的小写字母是boy,程序将输出大写字母boy,为什么?l 实验小结: getchar()与putchar()函数的使用方法第24课时实验课题:算术运算符与表达式实验目的:要求学生熟练掌握算术运算符的运算规则和算术表达式实验时间:第四周实验内容:任务一:找出除法运算规则main()clrscr();printf (“整型数据相除:5/2=%dn”,5/2);printf (“实型数据相除:5.0/2.0=%dn”,5.0/2.0);printf (“整型实型相除:5/2.0=%dn”,5/2.0);根据程序运行结果分析除法运算法则任务二:编程计算表达式100-a+4.0

45、5+18%3*(5/2.0)任务三:分析下列程序运行结果main()int a=5,b=2;printf (“a除以b的值是:a/b=%dn”,a/b);printf (“强制类型转换后的结果:a/(float)b=%fn”, a/(float)b);printf (“当前变量b的值是:b=%dn”,b);l 实验小结:学生对强制类型转换符的表示理解不够,编写程序时将()括在了变量而不是类型上。第25课时教学课题:自增自减运算符教学时间:第六周教学目的:要求学生掌握自增自减运算符的使用教学重点:自增自减运算符的使用教学难点:自增自减运算符的使用教学过程:l 讲授新课自增1,自减1运算符:自增1

46、运算符记为“+”,其功能是使变量的值自增1。自减1运算符记为“-”,其功能是使变量值自减1。可有以下几种形式:+i i自增1后再参与其它运算。-i i自减1后再参与其它运算。i+ i参与运算后,i的值再自增1。i- i参与运算后,i的值再自减1。 注意:自增自减运算对象可以是整型变量或实型变量,但不能是常量或表达式。 例:5+或(a+b)+都是不合法的 自增1,自减1运算符均为单目运算,都具有右结合性。例题:(让学生理解自增自减运算)main()int i,j,k;k=30;i=k+;printf (“i=%d,k=5d”,i,k);j=+k;printf (“nj=%d,k=%dn”, j,k);l 课堂练习:请学生说出下面程序的输出结果main()int i=8; printf(%dn,+i); printf(%dn,-i); printf(%dn,i+); printf(%dn,i-); printf(%dn,-i+); printf(%dn,-i-);l 布置作业:写出下面程序运行的结果main()int i=3; a=i+; b=+i;

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论