C语言程序设计教案.docx
- 文档编号:11930892
- 上传时间:2023-04-16
- 格式:DOCX
- 页数:86
- 大小:78.47KB
C语言程序设计教案.docx
《C语言程序设计教案.docx》由会员分享,可在线阅读,更多相关《C语言程序设计教案.docx(86页珍藏版)》请在冰豆网上搜索。
C语言程序设计教案
通化师范学院
教案
课程名称高级语言程序设计
课程类别专业课
授课时数96学分数4
授课对象计算机应用专业
使用教材称C语言程序设计基础版次1
作者李岩出版社清华大学出版社
授课教师张秀萍职称副教授
系(部)名称计算机科学系
第一章
概述
课题
第一章C语言概述
教案号
1
教学
目的
1、了解C语言出现的历史背景
2、掌握C语言程序的结构、书写格式和上机步骤
教材
分析
教学重点
C语言程序的结构
教学难点
上机步骤
课时安排
2
教学方法
讲授与演示法相结合
教具
计算机、投影仪
教
学
内
容
及
过
程
设
计
一新课引入
从计算机应用基础中学过的计算机语言及语言处理系统引出C语言。
二讲授新课
一、 C语言出现的背景
二、 C语言的特点
1. 语言简洁、紧凑,使用方便、灵活;
2. 运算符丰富
3. 数据类型多(整型、实型、字符型、数组类型、指针类型、结构体类型、共用体类等)
4. 具有结构化的控制语句
5. 语法不太严格,自由度大
6.既是高级语言,又具有低级语言的功能
7.成目标代码质量高,程序执行效率
8.可移植性好
三、C语言程序构成(采用程序实例加以说明,并提倡良好的程序设计书写风格)
1. C语言是由函数构成的,至少有一个main()函数;
2. 每个函数由函数首部和函数体组成;函数体由说明语句、执行语句组成;
3. 每个C程序从main()函数开始执行,并在main()中结束;
4. 每个语句和数据定义的最后必须加分号;
5. C程序无输入、输出语句:
输入功能由scanf()函数完成;输出功能由printf()函数完成;
6.可加注释/*……*/
四、上机步骤(上机环境:
TurboC2.0)
1. 进入环境2. 编辑源程序3. 保存源程序4. 编译源程序
5. 执行程序,查看结果6.6. 退出C环境
三课堂小结
1、 C语言的构成要素,main函数在程序中的作用
2、上机操作的过程
备注
安排上机实验,熟悉TC环境及简单的C语言程序构成
页码
1
第二章C程序设计的初步知识
课题
第二章C程序设计的初步知识
教案号
3
教学
目的
1、掌握C的数据类型
2、掌握整型、实型、字符型数据的常量及变量
教材
分析
教学重点
各种基本数据类型的常量和变量
教学难点
不同类型的数据在内存中的物理存储形式
课时安排
2
教学方法
讲授与演示法相结合
教具
计算机、投影仪
教
学
内
容
及
过
程
设
计
一复习引导
上次课我们已经学习了程序的一个方面算法,现在来学习另一方面数据结构。
二讲授新课
C有四种基本数据类型,分别是整型、字符型、实型、枚举型
一、常量与变量
1、常量:
在程序运行过程中,其值不能被改变的量。
两种形式:
一般常量和符号常量
1.直接常量(字面常量):
整型常量:
如12、0、-3等
实型常量:
如4.5、-1.234等
字符常量:
如‘a’、‘1’等,用单引号表示;
字符串常量:
如“a”、“abc”、“1”,用双引号表示。
2.符号常量:
符号常量即是用一个标识符来代替一个常量;符号常借助于预处理命令#define来实现;
定义形式:
#define标识符字符串
如:
#definePI3.1415926535
说明:
①习惯上,符号常量用大写字母表示;
②定义符号常量时,不能以“;”结束;
③一个#define占一行,且要从第一列开始书写;
④一个源程序文件中可含有若干个define命令,不同的define命令中指定的“标识符”不能相同;
2、变量:
在程序运行过程中,其值会发生变化。
1.每个变量必须有一个名字,变量名是标识符。
2.标识符是用来标识数据对象,是一个数据对象的名字。
3.命名规则:
以字母或下划线开始,后跟字符、数字或下划线。
例:
x1,_average,lotus_1_2_3,#abc,1fs,M.D.Jhon
4.变量名不能是关键字(即保留字,是C编译程序中保留使用的标识符。
如:
auto、break、char、do、else、if、int等)
5.变量必须先定义再使用
备注
页码
4
第二章C程序设计的初步知识
课题
第二章C程序设计的初步知识
教案号
3
教学
目的
1、掌握C的数据类型
2、掌握整型、实型、字符型数据的常量及变量
教材
分析
教学重点
各种基本数据类型的常量和变量
教学难点
不同类型的数据在内存中的物理存储形式
课时安排
2
教学方法
讲授与演示法相结合
教具
计算机、投影仪
教
学
内
容
及
过
程
设
计
二、整型数据
1、整型常量的表示方法
1) 十进制如:
123,-456,0
2) 八进制数如:
0123,-011(以0开头的数)
3) 十六进制数如:
0x123,-0x12,0xABC(以0x开头的)
2、整型变量
1) 整型数据在内存中以二进制形式存放,每一个整型变量在内存中占2个字节。
例:
定义整型变量i=10和j=-10的存放形式。
2)整型变量的分类:
基本型int、短整型short、长整型long、无符号型unsigned
3) 整型变量的定义
对变量的定义,一般放在函数体开头部分的声明部分(也可放在函数中某一分程序内)
例:
#include
main()
{inta,b,c,d;unsignedu;
a=12;b=-24;u=10;
c=a+u;d=b+u;
printf(“a+u=%d,b+u=%d\n”,c,d);}
4) 整型数据的溢出
一个int型变量的最大允许值为32767,如果再加1,其结果不是32768,而是-32768。
即“溢出”。
三、实型数据
1、实型常量的表示方法
(1)十进制浮点数
如:
0.123,.456,0.0,123.,123.0
整数部分和小数部分都可省,但不能同时省
(2)指数形式
如:
123e3,123E3代表123×103
指数部分为整常数; 尾数部分可以是整常数,也可以是实常数;尾数部分和指数部分均不可省。
E10,100.e15.2,.e5均为不合法的浮点数。
备注
页码
5
第二章C程序设计的初步知识
课题
第二章C程序设计的初步知识
教案号
3
教学
目的
1、掌握C的数据类型
2、掌握整型、实型、字符型数据的常量及变量
教材
分析
教学重点
各种基本数据类型的常量和变量
教学难点
不同类型的数据在内存中的物理存储形式
课时安排
2
教学方法
讲授与演示法相结合
教具
计算机、投影仪
教
学
内
容
及
过
程
设
计
2、实型变量
(1)实型数据在内存中的存放形式
一个实型数据一般在内存中占4个字节(32位)。
实型数据是按照指数形式存储的。
(2)实型变量的分类:
单精度float、双精度double、长双精度longdouble
四、字符型数据
1、字符常量
1) 括在一对单引号中的一个字符(单引号仅作界限符),如:
‘a’、‘X’
2 )一个字符常量占1个字节,存放的是字符的ASCII码值。
3) 转义字符:
以‘\’开头,后跟一个约定的字符或所要表示字符的十六进制(或者八进制)的编码;
2、字符变量:
字符变量用来存放字符常量,只能放一个字符。
例:
charc1=‘a’,c2=‘A’;一个字符变量在内存中占一个字节。
五、字符串常量
1.括在一对双引号中的0个或多个字符组成的序列;双引号仅作界限符;如:
“Clanguageprogramming”、“a\\n”、“#123”、“”等为字符串常量;
2.字符串常量的实际存储:
在存储完字符串中的有效字符后还应存储字符串结束标志‘\0’。
六、变量赋初值
在定义变量时对变量进行赋值称为变量的初始化;
格式:
类型说明符变量1=值1,变量2=值2,……;
如:
inta=3,b=4,c=5;
floatx=3.4,y=0.75;
charch1=‘K’,ch2=‘P’;
三课堂小结
1、C的基本数据类型int、float、double、char
2、 基本数据类型的常量表示、变量定义,及不同类型的数据在内存中的存储形式
四、布置作业
练习P65:
3.2、3.5、3.6、3.8
备注
页码
6
第二章C程序设计的初步知识
课题
第二章C程序设计的初步知识
教案号
4
教学
目的
1、掌握C语言中的各种运算符
2、掌握运算符的优先级与结合性
教材
分析
教学重点
C语言中各种运算符的使用
教学难点
混合表达式中运算符的运算顺序
课时安排
2
教学方法
讲授与演示法相结合
教具
计算机、投影仪
教
学
内
容
及
过
程
设
计
一、讲授新课
用运算符和括号将运算对象(数据)连接起来的、符合C语法规则的句子称为表达式。
优先级是指表达式中包含多个运算符时,先进行优先级高的运算符操作,然后在进行优先级低的运算符操作;
当表达式中包含的几个运算符的优先级全相同时,由运算符的结合性来决定他们的运算顺序。
1) 从左至右2)从右至左
一、算术运算符与算术表达式
1、基本的算术运算符:
+–*/%
优先级:
*/%高于+–
结合性:
左结合性
2、算术表达式:
用算术运算符和括号将运算对象(操作数)连接起来的、符合C语法规则的式子称为算术表达式。
3、强制类型转换运算符:
(类型名)(表达式)
4、自增、自减运算符:
++––
作用是使变量的值增一或减一。
二、赋值运算符与赋值表达式
1、简单的赋值运算符:
=除逗号表达式外,优先级最低
2、复合赋值运算符:
+=*=%=等
3、赋值表达式:
<变量><赋值运算符><表达式/值>
4、嵌套的赋值表达式
三、逗号运算符与逗号表达式
1、逗号运算符:
,所有运算符中优先级最低
2、逗号表达式:
表达式1,表达式2,……,表达式n
求解过程:
先求表达式1,再求表达式2,依次求下去,直到求出表达式n,整个逗号表达式的值就是表达式n的值
四、各类数值型数据间的混合运算(P54)
二、课堂小结
1、 ++、--运算
2、 各种运算符的优先级3、表达式值的求解
三、布置作业
练习:
P663.9、3.10、3.11、3.12
备注
安排上机实验
页码
7
第三章最简单的程序设计---顺序程序设计
课题
第三章顺序程序设计
教案号
5
教学
目的
1、了解C语句的概念及种类、掌握C语言常用的输入/出方式
2、学会简单的顺序程序设计
教材
分析
教学重点
C语言常用的输入/出方式
教学难点
格式输入输出
课时安排
2
教学方法
讲授与演示法相结合
教具
计算机、投影仪
教
学
内
容
及
过
程
设
计
一、复习引导
上一章介绍的常量、变量、运算符、表达式等都是构成程序的基本成分。
本章将介绍为编写简单程序所必需的一些内容。
二、讲授新课
一、C语句概述
1、C语句分类:
控制语句:
二个分支语句(if-else、switch),三个循环语句(for、while、do-while),四个转移语句(continue、break、goto、return)
函数调用语句如:
printf(“Hello,world!
”);
表达式语句如:
x+y;i++;a=2;a=3*5,40;
空语句;
复合语句{语句序列}
二、赋值语句:
赋值语句是由赋值表达式加上一个分号构成,如:
b=3;
三、数据输入输出的概念及在C语言中的实现
1、所谓输入输出是以计算机主机为主体而言的。
2、C语言本身不提供输入输出语句,输入输出操作是通过函数调用实现的。
3、要使用C语言库函数,应用“#include”将有关头文件包括到用户源程序中。
四、字符数据的输入输出
1、字符输出函数——putchar
语法:
putchar(c)
语义:
(向stdout终端)输出一个字符;
2、字符输入函数——getchar
语法:
getchar(),是一个无参函数;
语义:
(从stdin终端上)输入一个字符,函数的值就是从输入设备得到的字符。
五、格式输入输出
1、格式输出函数——printf
语法:
printf(“格式控制”,输出表列);
格式控制:
是用双引号括起来的字符串,包含两种信息:
普通字符和转义字符(这类字符总是原样输出)
格式说明:
由%和格式控制符组成。
如:
%d,%f等;(P77)如:
printf(“a=%d,b=%d”,a,b);若a、b的值分别为2和3,则输出结果为:
a=2,b=3
备注
页码
8
第三章最简单的程序设计---顺序程序设计
课题
第三章顺序程序设计
教案号
5
教学
目的
1、了解C语句的概念及种类、掌握C语言常用的输入/出方式
2、学会简单的顺序程序设计
教材
分析
教学重点
C语言常用的输入/出方式
教学难点
格式输入输出
课时安排
2
教学方法
讲授与演示法相结合
教具
计算机、投影仪
教
学
内
容
及
过
程
设
计
2、格式输入函数scanf
语法:
scanf(“格式控制”,地址表列);
格式控制:
包含三类符号
空白字符:
(空格、Tab或\t、\n),输入时不必一一对应;
普通字符:
(非格式转换说明符、非空白符、非%),输入时必须一一对应;
格式转换说明符:
注意:
scanf函数规定,组成输入项表的输入对象须是地址量;如:
scanf(“%d,%d,%d”,&a,&b,&c);
scanf(“a=%d,b=%d,c=%d”,&a,&b,&c);
①第一个输入语句,正确的输入数据流为:
123,456,789
123→a,456→b,789→c
②同理对第二个输入语句,正确的输入数据流应是:
a=123,b=456,c=789
六、顺序结构程序设计举例
例1:
输入三角形的三边长,求三角形面积。
分析:
三边为a,b,c,面积area2=s(s-a)(s-b)(s-c),其中s=(a+b+c)/2
程序:
#include
main()
{floata,b,c,s,area;
sacnf(%f,%f,%f”,&a,&b,&c);
s=1.0/2*(a+b+c);
area=sqrt(s*(s-a)*(s-b)*(s-c));
printf(“a=%7.2f,b=%7.2f,c=%7.2f,s=%7.2f\n”,a,b,c,s);
printf(“area=%7.2f\n”,area);
}
备注
上机实验,学习简单的C程序设计。
页码
9
第四章选择结构程序设计
课题
第四章选择结构程序设计
教案号
6
教学
目的
1、掌握实现选择结构的两种语句、两个运算符
2、学会编写选择结构的程序
教材
分析
教学重点
关系运算符、if-else语句
教学难点
嵌套if-else语句中的if与else匹配问题
课时安排
2
教学方法
讲授与演示法相结合
教具
计算机、投影仪
教
学
内
容
及
过
程
设
计
一、复习引导
上一次课已经介绍了程序基本结构之一,但在大多数情况下都要用到选择结构。
二、讲授新课
一、关系运算符与关系表达式
1、关系运算符:
<<=>>===!
=
优先级:
<<=>>=高于==!
=
关系运算符低于算术运算符,高于赋值运算符
2、关系表达式:
用关系运算符将两个表达式连接起来的式子。
关系表达式求值:
关系成立,值为1;关系不成立,值为0
二、双分支选择语句
1、if语句的三种形式
语法1:
if(表达式)语句;
语法2:
if(表达式)语句1;else语句2;
语法3:
if(表达式1)语句1;
elseif(表达式2)语句2;
elseif(表达式3)语句3;
……
else语句n+1;
说明:
1. if关键字后均为表达式(逻辑表达式、关系表达式、赋值表达式、变量等);
如:
if(a=5)语句;if(b)语句;
2. 条件表达式必须用括号括起来,在语句后必须加分号;
3. 满足条件需执行一组语句时,该组语句必须用{}括起来;
4. if语句嵌套时,else总是与它最靠近的未配对的if匹配;
5.因为if语句执行时总是简单地测试其中作为条件的“表达式”的值是0还是非0,便可利用这种特性来简化程序设计。
如对于:
if(expression!
=0)完全可用if(expression)来代替;
同理:
if(!
exp)语句;等价于:
if(exp==0)语句;
三、课堂小结
1、关系运算符与关系表达式
2、if-else语句的应用。
备注
页码
10
第四章选择结构程序设计
课题
第四章选择结构程序设计
教案号
7
教学
目的
1、掌握实现选择结构的两种语句、两个运算符
2、学会编写选择结构的程序
教材
分析
教学重点
switch语句、条件运算符
教学难点
嵌套if-else语句中的if与else匹配问题
课时安排
2
教学方法
讲授与演示法相结合
教具
计算机、投影仪
教
学
内
容
及
过
程
设
计
一、教授新课
一、三目条件运算符及其表达式
1、条件运算符:
?
:
2、格式:
e1?
e2:
e3
3、语义:
判e1的值,为1时计算e2,否则计算e3;
如:
max=(a>b)?
a:
b等价于if(a>b)max=a;
elsemax=b;
4、说明:
1) 条件运算符的结合方向自右至左
如:
a>b?
a:
c>d?
c:
d等价于a>b?
a:
(c>d?
c:
d)
若inta=1,b=2,c=3,d=4;则表达式的值为________
2) 条件运算符的优先级仅高于逗号运算符与赋值运算符;
3) 只有当if语句的真假均只执行一个赋值语句且给同一变量赋值时,才能用条件表达式取代;如:
if(a>b)max=a;elsemax=b;
二、switch语句
语法1:
switch(表达式)
{caseC1:
语句序列1;
caseC2:
语句序列2;
……
caseCn:
语句序列n;
default:
语句序列n+1;
}
语法2:
switch(表达式)
{caseC1:
语句序列1;break;
caseC2:
语句序列2;break;
……
caseCn:
语句序列n;break;
default:
语句序列n+1;break;
}
说明:
(1)switch后面的()内的表达式,ANSI标准允许他为任何类型
(2)case后的常量表达式一般不可以为实型数据。
(3)当表达式的值与某个case后面的常量表达式的值相等时,就执行此case后面的语句,若所有case中的常量表达式的值都与表达式的值不相等,执行default后面语句。
备注
页码
11
第四章选择结构程序设计
课题
第四章选择结构程序设计
教案号
7
教学
目的
1、掌握实现选择结构的两种语句、两个运算符
2、学会编写选择结构的程序
教材
分析
教学重点
switch语句、条件运算符
教学难点
嵌套if-else语句中的if与else匹配问题
课时安排
2
教学方法
讲授与演示法相结合
教具
计算机、投影仪
教
学
内
容
及
过
程
设
计
(5)每个case后面的常量表达式的值必须互不相同。
(6)各个case与default出现次序不影响结果。
(7)break的使用(P99)
(8)多个case可以共用一组语句
三、选择结构程序举例
例:
求ax2+bx+c=0方程的根。
分析:
(1)a=0,不是二次方程。
(2)b2-4ac=0,有两个相等的实根。
(3)b2-4ac>0,有两个不等的实根。
(4)b2-4ac<0,有两个共轭的复根。
N-S图:
P102
二、课堂小结
1、 switch语句
2、 在编写程序过程中,注意分支的作用范围,及复合语句的运用。
三、布置作业
1、上机作业(P104):
5.5、5.6
2、书面作业(P104)5.3、5.9
备注
上机实验,学习选择结构的程序设计
页码
12
第五章循环控制
课题
第五章循环控制
教案号
8
教学
目的
1、掌握三种循环语句的语法结构
2、灵活运用循环语句
教材
分析
教学重点
三种循环语句while、do-while、for
教学难点
三种循环语句的区别
课时安排
2
教学方法
讲授与演示法相结合
教具
计算机、投影仪
教
学
内
容
及
过
程
设
计
一、引入新课
问题1:
假如全班41人,欲从键盘上输入每人的数学成绩,然后计算出平均成绩;
问题2:
编程计算n!
。
重复执行一组语句是程序设计要求的基本功能之一。
在C语言中可以用以下语句来实现循环:
(1)if和goto
(2)while(3)do-while(4)for
二、讲授新课
一、goto语句及用goto构成循环
语法:
gotolabel;
其中:
label是语句标号,它命名的规则同变量名;
语义:
使程序无条件地转向标号为
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言程序设计 教案