C语言程序设计教案.doc

上传人:laozhun 文档编号:2384664 上传时间:2023-02-17 格式:DOC 页数:28 大小:255.50KB
返回 下载 相关 举报
C语言程序设计教案.doc_第1页
第1页 / 共28页
C语言程序设计教案.doc_第2页
第2页 / 共28页
C语言程序设计教案.doc_第3页
第3页 / 共28页
C语言程序设计教案.doc_第4页
第4页 / 共28页
C语言程序设计教案.doc_第5页
第5页 / 共28页
点击查看更多>>
资源描述

《C语言程序设计教案.doc》由会员分享,可在线阅读,更多相关《C语言程序设计教案.doc(28页珍藏版)》请在三一办公上搜索。

1、咸宁职业技术学院教案课程名称: C语言程序设计 授课班级: 07计应1-2、07计科1-2班 授课教师: 姜 翠 2008年2月20日教案1授课题目第一章 C语言基本知识(发展历史、特点、程序结构、语法单位、上机步骤)课时安排2授课时间2007-2008第二学期教学目的1、了解C语言出现的背景2、掌握C语言程序的构成、书写格式和上机步骤教学内容:教学重点:C语言程序的构成教学难点:上机操作步骤一 引入新课从计算机应用基础中学过的计算机语言及语言处理系统引出C语言。步骤二 讲授新课一、 C语言出现的背景二、 C语言的特点1. 语言简洁、紧凑,使用方便、灵活;2. 运算符丰富3. 数据类型多(整型

2、、实型、字符型、数组类型、指针类型、结构体类型、共用体类等)4. 具有结构化的控制语句5. 语法不太严格,自由度大6. 既是高级语言,又具有低级语言的功能7. 生成目标代码质量高,程序执行效率8. 可移植性好三、 C语言程序的构成四、上机步骤1.进入环境c:tctc或进入ms-dos,cd,cd tc,tc2.编辑源程序3.保存源程序4.编译源程序F95.执行程序Ctrl-F9,查看结果Alt-F5 退出C环境Alt-X讨论、思考题、作业、上机练习:1、进入C编辑环境,按良好的程序设计风格输入例题,按步骤编译、运行、查看结果2、根据求两个数最大值的例题,试编写程序求三个数的最大值参考资料:C语

3、言程序设计(第三版) 清华大学出版社 谭浩强编著教学过程设计:1、 对本门课程进行总体概述10分钟2、 新课讲授65分钟3、 课堂练习10分钟4、 总结5分钟授课类型:理论课 教学方式:讲授 教学资源:多媒体 教案2授课题目第二章 数据类型(数据类型总述、整型、实型、字符型数据的常量及变量)课时安排2授课时间2007-2008第二学期教学目的1、掌握C的数据类型2、掌握整型、实型、字符型数据的常量及变量教学内容:教学重点:C语言程序的构成教学难点:上机操作步骤一 复习引导通常将程序的理解为两个方面:算法和数据结构,现在来学习其中一个方面数据结构。步骤二 讲授新课1、C语言提供的数据结构是以数据

4、类型形式出现的;2、数据在内存中存放的情况有数据类型决定; C的基本数据类型C语言的数据类型丰富,但在学习第8章之前,我们只遇到C的四种基本数据类型:整型、字符型、单精度实型、双精度实型常量与变量l常量:其值不能被改变的量。 两种:一般常量和符号常量1. 直接常量(字面常量):整型常量、实型常量、字符常量、字符串常量。2. 符号常量:l 变量:在程序运行过程中,其值会发生变化。一、整型数据1、 整型常量的表示方法 2、整型变量二、实型数据1、 实型常量的表示方法 2、实型变量步骤三 课堂小结1、 C的基本数据类型int、float、double2、 各种类型的常量表示、变量定义,以及不同类型的

5、数据在内存中的存储形式讨论、思考题、作业、上机练习:练习P32:T1,T2,T3,T4,T5,T6 上机:T8、T9参考资料:C语言程序设计(第三版) 清华大学出版社 谭浩强编著教学过程设计:1、新课讲授75分钟2、课堂练习10分钟3、总结5分钟授课类型:理论课 教学方式:讲授 教学资源:多媒体 教案3授课题目第二章 数据类型(字符型数据的常量及变量、字符串常量)课时安排2授课时间2007-2008第二学期教学目的1、掌握C的数据类型2、掌握字符型数据的常量及变量教学内容:教学重点:字符类型的常量和变量、字符串类型的常量教学难点:字符类型的数据在内存中的存储形式步骤一 复习引导 上次课我们已经

6、学习了基本数据类型中的整型和实型数据,这次课学习字符型数据。步骤二 讲授新课1、 字符型数据;2、 字符串常量;一、字符型数据1、字符常量2、字符变量3、字符数据的存放形式及使用方法二、字符串常量三、变量赋初值在定义变量时对变量进行赋值称为变量的初始化;格式:类型说明符 变量1=值1,变量2=值2,;注意: int a, b, c=5; 只对c初始化,值为5;对几个变量赋以同一个初值时,int a=b=c=5; 是非法的;int a=5, b=5, c=5; 是合法的。(注:a=b=c=5;是合法的赋值语句)说明:对变量赋初值,仅表示该变量在程序运行过程中执行本函数时的初值步骤三 课堂小结1、

7、 C的基本数据类型除了int、float、double外还有char2、 char类型的常量表示、变量定义,以及此类型的数据在内存中的存储形式讨论、思考题、作业、上机练习:练习P32:T1,T2。T3,T4,T5,T6 上机:T8、T9参考资料:C语言程序设计(第三版) 清华大学出版社 谭浩强编著教学过程设计:1、新课讲授75分钟2、课堂练习10分钟3、讲解前两章习题25分钟4、讲解前两次上机20分钟5、总结5分钟授课类型:理论课 教学方式:讲授 教学资源:多媒体 教案4授课题目第三章 运算符与表达式(算术、强制类型转换及自增、自减运算符及表达式)课时安排2授课时间2007-2008第二学期教

8、学目的1、掌握C语言中的各种运算符2、掌握运算符的优先级与结合性教学内容:教学重点:算术运算符、强制类型转换运算符及自增、自减运算符及表达式教学难点:各种表达式中运算符的运算顺序步骤一 复习引导用运算符和括号将运算对象(数据)连接起来的、符合C语法规则的句子称为表达式。步骤二 讲授新课A.优先级是指表达式中包含多个运算符时,先进行优先级高的运算符操作,然后在进行优先级低的运算符操作;B.当表达式中包含的几个运算符的优先级全相同时,由运算符的结合性来决定他们的运算顺序。一、算术运算符和算术表达式1、 基本的算术运算符2、 算术表达式3、 5种算术运算符的优先级别不同:二、强制类型转换运算符格式:

9、(类型关键字或类型名)表达式三、自增与自减运算符四、各类数值型数据间的混合运算混合算术表达式,如:10+a+ i*fd/e需自动转换成同一类型再运算;转换的规则如下:(书P54)步骤三 课堂小结1、 算术运算符、强制类型转换运算符的应用,及相关表达式的值2、 +、-运算3、 各种运算符的优先级讨论、思考题、作业、上机练习:练习:P48 T6参考资料:C语言程序设计(第三版) 清华大学出版社 谭浩强编著教学过程设计:1、新课讲授75分钟2、课堂练习10分钟3、总结5分钟授课类型:理论课 教学方式:讲授 教学资源:多媒体 教案5授课题目第三章 运算符与表达式(赋值运算符、逗号运算符及关系、关系、逻

10、辑运算符及表达式)课时安排2授课时间2007-2008第二学期教学目的1、掌握C语言中的各种运算符2、掌握运算符的优先级与结合性教学内容:教学重点:赋值运算符、逗号运算符及关系、关系运算符及表达式、逻辑运算符及表达式教学难点:各种表达式中运算符的运算顺序步骤一 复习引导上次课学习了算术、强制类型转换运算符以及自增、自减运算符及其表达式,这次课继续学习赋值、逗号、关系、逻辑等运算符及其表达式步骤二 讲授新课一、赋值运算符和赋值表达式1、赋值运算符:= 2、类型转换 3、复合的赋值运算符 4、赋值表达式:二、逗号运算符和逗号表达式语法:表达式1,表达式2,表达式n语义:依次求各个表式的值,最后一个

11、表达式的值作为整个逗号表达式的值;三、关系运算符和关系表达式1、 关系运算符及其优先级2、 关系表达式3、 关系表达式的值4、 赋值运算符、逗号运算符及关系、关系运算符及表达式的运算以及值5、 各种运算符的优先级四、逻辑运算符和关系表达式1、逻辑运算符及其优先次序逻辑运算符及其优先次序 一元逻辑运算符:!(非),右结合 二元逻辑运算符:& (与)、|(或),左结合逻辑运算的真值表(书P40)2、逻辑表达式步骤三 课堂小结1、赋值运算符、逗号运算符及关系、关系运算符及表达式的运算以及值2、各种运算符的优先级讨论、思考题、作业、上机练习:练习:P48 T5参考资料:C语言程序设计(第三版) 清华大

12、学出版社 谭浩强编著教学过程设计:1、新课讲授75分钟2、课堂练习10分钟3、总结5分钟授课类型:理论课 教学方式:讲授 教学资源:多媒体 教案6授课题目第三章 运算符与表达式(条件、长度、位运算符及表达式)及前三章课后习题处理课时安排2授课时间2007-2008第二学期教学目的1、掌握C语言中的各种运算符2、掌握运算符的优先级与结合性教学内容:教学重点:条件、长度、位运算符及表达式教学难点:各种表达式中运算符的运算顺序步骤一 复习引导上次课学习了赋值运算符、逗号运算符及关系、关系、逻辑运算符及表达式的运算以及值的相关知识,这次课继续学习条件、长度及位运算符及表达式。步骤二 讲授新课一、条件运

13、算符和条件表达式1、 条件运算符:?: 结合方向:“自右向左”2、 一般形式:表达式1?表达式2:表达式33、 执行过程 4、优先级二、长度运算符和长度运算表达式1、 长度运算符:sizeof 用来求数据类型所占的字节数。2、 长度运算表达式:sizeof(数据类型)如:sizeof(float)的值为4。应用:一般与动态存储分配函数malloc和calloc联合使用。三、位运算符及表达式(一)按位逻辑运算符1、按位与(&)用途:(1)清零 (2)截取(析出)变量指定的二进制位,其余位清零。2、按位或(|) 用途:将二进制数据的指定位置1,而不管原来的二进制位状态如何。工作数:指定位为1,其余

14、位为03、按位异或()当且仅当参加运算的两个操作数对应的二进制位的状态不同时才将对应的二进制位置1; 用途:使指定的二进制位状态翻转(1变0,0变1) 与0相,保留原值步骤三 课堂小结1、条件、长度、位运算符及表达式以及值 2、各种运算符的优先级讨论、思考题、作业、上机练习:P48 T4参考资料:C语言程序设计(第三版) 清华大学出版社 谭浩强编著教学过程设计:1、新课讲授75分钟2、课堂练习10分钟3、总结5分钟授课类型:理论课 教学方式:讲授 教学资源:多媒体 教案7授课题目第四章 语句和顺序程序结构课时安排2授课时间2007-2008第二学期教学目的1、掌握赋值语句、输入输出语句2、学会

15、简单的顺序程序设计教学内容:教学重点:输入、输出语句教学难点:格式输入输出语句步骤一 复习引导上一章介绍的常量、变量、运算符、表达式等都是构成程序的基本成分。本章将介绍为编写简单程序所必需的一些内容。步骤二 讲授新课一、C语句概述1、控制语句:if-else、switch、for、while、do-while、continue、break、return2、函数调用语句: 如:printf(“Hello, world!”);3、表达式语句: x+y; i+; a=2; a=3*5, 40 ; 4、空语句( ;)5、复合语句: 语句序列 二、 赋值语句赋值语句是由赋值表达式加上一个分号构成,如:b

16、=3; if(a=b)0) t=a;三、 数据输入输出的概念及在C语言中的实现1、输入输出操作是由函数来实现的2、在使用库函数时,要用预编译命令“#include”将有关的“头文件”包括到用户源文件中。例#include 或 #include “stdio.h”3、字符输入、输出函数getchar()、putchar(c)4、格式输入、输出函数-scanf()、printf()四、顺序结构程序设计举例例1:输入三角形的三边长,求三角形面积。分析:三边为a,b,c,面积area2=s(s-a)(s-b)(s-c),其中s=(a+b+c)/2例2:从键盘输入一个大写字母,要求改用小写字母输出。步骤

17、三 课堂小结1、 字符输入输出函数:getcharputchar2、 格式输入输出函数:scanfprintf,特别注意scanf函数的地址项是否要加&3、 注意简单程序的结构,头文件、变量定义、输入语句及输出语句讨论、思考题、作业、上机练习: (P74)4.1参考资料:C语言程序设计(第三版) 清华大学出版社 谭浩强编著教学过程设计:1、新课讲授75分钟2、课堂练习10分钟3、总结5分钟授课类型:理论课 教学方式:讲授 教学资源:多媒体 教案8授课题目第四章 选择程序结构(if-else语句、switch语句)及while()和do-while()循环结构课时安排2授课时间2007-2008

18、第二学期教学目的1、掌握实现选择结构的两种语句、一个运算符2、掌握while()和do-while()循环结构2、学会编写选择结构及循环结构的程序教学内容:教学重点:if-else语句、switch语句、while()和do-while()语句教学难点:嵌套if-else语句中的if与else匹配问题、while()和do-while()语句步骤一 复习引导上一次课已经介绍了程序基本结构之一,但在大多数情况下还要用到选择和循环结构。步骤二 讲授新课一、条件语句if语句的三种形式语法1:if (表达式)语句; 语法2:if (表达式) 语句1; else 语句2;语法3:if (表达式1) 语句

19、1; else if (表达式2) 语句2; else 语句n+1;说明: if (expression!=0) 完全可用 if (expression) 来代替;同理: if(!exp)语句; 等价于: if(exp= =0) 语句;二、switch 语句三、while()和do-while()语句1、while语句 语法:while (exp) 循环体语句;2、do-while语句语法:do 循环体语句; while (exp);四、程序举例例:求ax2+bx+c=0方程的根。(分情况讨论)步骤三 课堂小结1、 两种选择语句:if-else、switch语句,while()和do-whil

20、e()循环结构,注意各种条件的描述;2、 在编写程序过程中,注意分支的作用范围,及复合语句的运用。讨论、思考题、作业、上机练习:上机作业P74: 4.3、4.4 、4.6 书面作业P74: 4.2、4.5参考资料:C语言程序设计(第三版) 清华大学出版社 谭浩强编著教学过程设计:1、新课讲授75分钟2、课堂练习10分钟3、总结5分钟授课类型:理论课 教学方式:讲授 教学资源:多媒体 教案9授课题目第四章 for循环程序结构及其他控制语句课时安排2授课时间2007-2008第二学期教学目的1、掌握for循环语句的语法结构、熟悉三种循环语句嵌套使用的方法2、灵活运用各种控制语句来编写程序教学内容:

21、教学重点:for循环语句、break、continue控制语句教学难点:三种循环语句的区别步骤一 引入新课在C语言中可以用以下语句来实现循环: (1)while (2)do-while (3)for步骤二 讲授新课一、for 语句语法:for(表达式1;表达式2;表达式3) 循环体语句;注意与while()和do-while()循环结构作比较!二、循环的嵌套及几种循环的比较三种循环可以互相嵌套例:打印九九乘法表说明: 内循环必须完全包含在外循环中,不能交叉; 并列循环允许使用相同的循环变量,嵌套循环不允许三、break语句和continue语句1、break语句:只能用在循环语句、switch

22、语句中,它的功能是强行退出循环或switch。2、continue语句:只能用在循环语句中,它的功能是结束本次循环,跳到循环体中下面尚未执行的语句,接着进行下次是否执行循环的判定。四、程序举例例1:求Fibonacci数列的前40个数,即F1=1(n=1),F2=1(n=2),Fn=Fn-1+Fn-2(n大于2)例2:判别m是否为素数。在此基础上求100200间的全部素数。程序设计的三种方法:1、枚举法:就是逐一列举出可能解的各个元素,并加以判断,直到求得所需要的解。常用在排列、组合、数据分类、信息检索、多解方程的求解上;2、归纳法:是从大量的特殊性中总结出规律性或一般性的结论。在程序设计上主

23、要表现为递归和迭代、数列和级数求和。3、抽象法:自顶向下,逐步求精。步骤三 课堂小结1、for语句的语法结构,特别是for语句中三个表达式的作用2、whie与do-while、for语句的区别及循环控制的实现方法讨论、思考题、作业、上机练习:上机练习:(P74)4.7、4.8、4.9参考资料:C语言程序设计(第三版) 清华大学出版社 谭浩强编著教学过程设计:1、新课讲授75分钟2、课堂练习10分钟3、总结5分钟授课类型:理论课 教学方式:讲授 教学资源:多媒体 教案10授课题目第五章 数组(一维、二维数组的定义、引用、初始化)课时安排2授课时间2007-2008第二学期教学目的1、掌握一维数组

24、的定义和引用2、掌握二维数组的定义和引用教学内容:教学重点:一维、二维数组的定义、引用、初始化教学难点:数组的存储形式,数组的首地址步骤一 引入新课迄今为止,我们使用的都是属于基本类型的数据,C语言还提供了构造类型的数据:数组类型、结构体类型和共用体类型。数组是有序数据的集合,数组中每一个元素都属于同一个数据类型。 步骤二 讲授新课一、一维数组的定义: 类型说明符 数组名exp ;例如:int data10, number5;二、一维数组元素的引用:数组名下标三、一维数组的初始化1. 在定义数组时对数组元素赋以初值;int a10=0, 1, 2, 3, 4, 5, 6, 7, 8, 9;2.

25、 可以只给一部分元素赋值; int a10=0, 1, 2, 3, 4;3. 如果想使一个数组中全部元素值为0,可简便实现;int a10=0, 0, 0, 0, 0, 0, 0, 0, 0, 0;其实,对static数组不赋初值,系统会对所有数组元素自动赋以0值,即上句等价于: static int a10;4. C允许通过所赋初值的个数来隐含定义一维数组的大小;int a=0,1,2,3,4,5,0; 相当于 int a7=0,1,2,3,4,5,0;二维数组的定义和引用一、二维数组的定义 类型说明符 数组名exp1exp2; 如:int number54; char ch34, name

26、8; 数组的存储结构:以行为主序的连续空间二、二维数组的引用:二维数组元素的表示形式为:数组名下标下标步骤三 课堂小结1、 一维数组、二维数组的定义、引用及初始化2、 一维数组、二维数组的存储形式讨论、思考题、作业、上机练习:(P90-P91)T5.5 T5.6 T5.10参考资料:C语言程序设计(第三版) 清华大学出版社 谭浩强编著教学过程设计:1、新课讲授75分钟2、课堂练习10分钟3、总结5分钟授课类型:理论课 教学方式:讲授 教学资源:多媒体 教案11授课题目第五章 数组(字符数组的输入与输出)课时安排2授课时间2007-2008第二学期教学目的1、掌握字符数组的定义、初始化、引用,及

27、输入与输出2、掌握字符串处理函数教学内容:教学重点:字符数组的输入与输出教学难点:字符串处理函数步骤一 复习引导从一般的一维数组、二维数组到特殊的字符数组步骤二 讲授新课一、字符数组的定义 char 数组名exp; 如:char c10;二、字符数组的初始化1. 给每一个字符型数组元素依次赋给一个单字符。char str6=C, h, i, n, a, 0;2.直接在赋值号右边给出字符串常量。如:char str6=“China”;三、字符数组的引用四、字符串和字符串结束标志字符串结束标志是“0”,如:char ch=”China”; “China”在存储器中实际占用6个字节:五、字符数组的输

28、入和输出1、字符数组的输出(1)用格式符“c”控制的 printf();(2)用格式符“s”控制的 printf();(3)puts (字符数组);2、字符数组的输入(1)用格式符“s”控制的scanf();如果利用一个scanf函数输入多个字符串时,则以空格分隔;(2)用gets( );如: char ch16; gets(ch); 与scanf不同,输入字符串中的空格也会被接收。六、字符串处理函数1、puts(字符数组) 2、gets(字符数组)3、strcat(字符数组1,字符数组2) 4、strcpy(字符数组1, 字符串2) 5、strcmp(字符串1,字符串2) 6、strlen(

29、字符数组) 7、strlwr(字符串) 8、strupr(字符数组)步骤三 课堂小结1、 字符串的结束标记2、 字符串的输入与输出,gets、puts3、 字符串处理函数讨论、思考题、作业、上机练习:(P91)T5.8 T5.9参考资料:C语言程序设计(第三版) 清华大学出版社 谭浩强编著教学过程设计:1、新课讲授75分钟2、课堂练习10分钟3、总结5分钟授课类型:理论课 教学方式:讲授 教学资源:多媒体 教案12授课题目第五章 数组(程序举例)课时安排2授课时间2007-2008第二学期教学目的学会用数组解决问题教学内容:教学重点:教学难点:步骤一 复习引导步骤一、复习举例我们已经学习了数组

30、这种数据结构,但还要学会用数组来解决具体问题。习题1:有一已排好序的数组,今输入一个数,要求按原来的排序规律将它插入到数组中。main() int a11=1, 4, 6, 9, 13, 16, 19, 28, 40, 100; int temp1,temp2,number,end, i, j ; for( i=0; iend ) a10=number;else for( i=0; inumber) break; for( j=10; ji; j-) aj=aj-1; ai=number; for(i=0; i11; i+) printf(“%6d”,ai); 待添加的隐藏文字内容3步骤二 讲

31、授新课习题2:编写一个程序,将字符数组s2中的全部字符拷贝到字符数组s1中。不用strcpy函数。拷贝时,0也要拷贝进去。0后面的字符不拷贝。#include main( ) char s180, s280; int i; printf(“Input s2:”); scanf(“%s”, s2); for(i=0; i=strlen(s2); i+) s1i=s2i;printf(“s1:%sn”,s1); 步骤三、课堂小结1、 三种排序方法:冒泡排序、选择排序、插入排序2、 字符数组或字符串的处理讨论、思考题、作业、上机练习:(P91) 继续完成课后编程题目。参考资料:C语言程序设计(第三版

32、) 清华大学出版社 谭浩强编著教学过程设计:1、新课讲授45分钟2、课堂练习10分钟3、讲解习题35分钟授课类型:理论课 教学方式:讲授 教学资源:多媒体 教案13授课题目第六章 编译预处理(宏的使用,文件包含)课时安排2授课时间2007-2008第二学期教学目的1、了解预处理的概念及特点2、掌握有参宏与无参宏的定义及使用,领会文件包含的使用及效果教学内容:教学重点:掌握宏的使用,文件包含教学难点:有参宏与无参宏的使用步骤一 复习引导 ANSI C标准规定可以在C源程序中加入一些“预处理命令”,以改进程序设计环境,提高编程效率。 步骤二 讲授新课C语言与其他高级语言的一个重要区别是可以使用预处

33、理命令和具有预处理的功能。C提供的预处理功能主要有以下三种: 宏定义、文件包含、条件编译。分别用宏定义命令、文件包含命令、条件编译命令来实现。为了与一般C语句相区别,这些命令以符号“ #” 开头。宏定义 宏: 代表一个字符串的标识符。 宏名:被定义为“宏”的标识符。 宏代换(展开):在编译预处理时,对程序中所有出现的 “宏名”,用宏定义中的字符串去代换的过程。一、不带参数的宏定义 一般形式: #define 标识符 字符串二、带参数的宏定义 格式:#define 宏名(参数表) 字符串“文件包含”处理一般形式,#include “文件名” 或 #include 步骤三 课堂小结 本课主要讲解了

34、宏定义、“文件包含”处理。对带参数的宏的使用,及与函数的使用的区别。搞清经常使用的头文件。讨论、思考题、作业、上机练习:P99 T1、T2、T3 参考资料:C语言程序设计(第三版) 清华大学出版社 谭浩强编著教学过程设计:1、新课讲授55分钟3、课堂练习10分钟4、习题处理25分钟授课类型:理论课 教学方式:讲授 教学资源:多媒体 教案14授课题目第七章 函数(函数定义、调用的一般形式)课时安排2授课时间2007-2008第二学期教学目的掌握函数定义、声明、调用的一般形式教学内容:教学重点:函数定义、调用的一般形式教学难点:形式参数和实际参数步骤一 复习引导一个C语言源程序可由一个主函数和若干

35、个辅助函数组成。由主函数调用其他函数,其他函数也可以互相调用。 步骤二 讲授新课7.1 概述 例7.1 简单函数的一个例子7.2 函数定义和声明的一般形式定义:(一)无参函数的定义形式 类型标识符 函数名( ) 函数体(包括声明部分和执行部分) (二)有参函数定义的一般形式 类型标识符 函数名(形式参数表) 函数体(包括声明部分和执行部分) (三)一个函数可以是空函数 如 dummy( ) 声明: 函数类型 函数名(参数类型1,参数类型2, , 参数类型n);或:函数类型 函数名(参数类型1 参数名1,参数类型2 )7.3 函数参数和函数的值、函数调用(一)形式参数和实际参数 关于形参和实参的

36、说明:(书P112)(二)函数的返回值return语句: return (表达式); 或:return 表达式; 或:return;(三)函数的调用 函数调用形式: 函数名(实参表列); 步骤三 课堂小结1、有参函数的定义形式 2、形参和实参的区别 3、函数的声明和调用讨论、思考题、作业、上机练习:P142 7.1 7.2参考资料:C语言程序设计(第三版) 清华大学出版社 谭浩强编著教学过程设计:1、新课讲授75分钟2、课堂练习10分钟3、总结5分钟授课类型:理论课 教学方式:讲授 教学资源:多媒体 教案15授课题目第七章 函数(函数定义、调用的一般形式)课时安排2授课时间2007-2008第

37、二学期教学目的1、掌握函数的嵌套调用和递归调用2、掌握虚实结合教学内容:教学重点:嵌套和递归调用、数组作为函数参数教学难点:递归调用、虚实结合步骤一 复习引导函数调用时,要记录程序执行的中断点、保护现场。调用结束时,又要恢复现场给出返回值和返回地址,以便实现流程控制的返回,显然函数调用必然要有一定的时间和空间的开销,从而影响执行效率。 步骤二 讲授新课7.4 函数的嵌套和递归调用一、 函数的嵌套调用在调用一个函数的过程中,又可以调用另外一个函数。函数的嵌套调用是C语言函数调用的最重要的特色,是体现C语言函数互相独立的最根本规则。二、函数的递归调用直接或间接调用自身的函数为递归函数。一个问题采用

38、递归方法来解决时必须符合以下条件:(1)可将一个问题转化为具有同样解法的规模较小的问题;(2)必须有明确的结束条件。7.5 数组作函数参数虚实结合(哑实结合)一、数组元素作函数实参二、数组名作函数参数三、多维数组名作函数参数步骤三 课堂小结函数的嵌套调用和递归调用,注意调用的过程数组作为函数参数有两种情况:传递数组元素的值、传递数组名讨论、思考题、作业、上机练习:(P142)7.3、7.4、7.5参考资料:C语言程序设计(第三版) 清华大学出版社 谭浩强编著教学过程设计:1、新课讲授75分钟2、课堂练习10分钟3、总结5分钟授课类型:理论课 教学方式:讲授 教学资源:多媒体 教案16授课题目第

39、七章 函数(局部变量和全局变量、变量的存储类别)课时安排2授课时间2007-2008第二学期教学目的1、掌握局部变量和全局变量的作用范围2、掌握变量的存储类别,了解内部函数和外部函数教学内容:教学重点:局部变量和全局变量、变量的存储类别教学难点:变量的作用域和生存期步骤一 复习引导在函数调用过程中,不仅要注意实参和形参的数据结合,而且要注意各个变量的作用域和生存期。 步骤二 讲授新课7.6 局部变量和全局变量一、局部变量 二、全局变量7.7 变量的存储类别从变量的作用域(空间)来分,为全局和局部变量。从变量值存在的(生存期)时间来分,可以分为:一、动态存储方式与静态存储方式静态存储方式 动态存

40、储方式二、auto变量、用static声明局部变量、register变量、用extern声明外部变量三、存储类别小结从作用域角度分:局部变量 全局变量 从变量存在的时间分:动态存储 静态存储从变量值存放的位置分:内存中的静态存储区 内存中的动态存储区寄存器:寄存器变量 static对局部变量和全局变量的作用不同。7.8 内部函数和外部函数一、内部函数 一个函数只能被本文件中其他函数所调用。 即:static 类型标识符 函数名(形参表)二、外部函数 一个函数可供其他文件调用,称为外部函数步骤三 课堂小结1、 局部变量和全局变量的作用域2、 变量的存储类别有动态存储方式和静态存储方式3、 关键字有auto、static、register、extern讨论、思考题、作业、上机练习:(P134)7.6、7.7、7.8、7.9、7.10参考资料:C语言程序设计(第三版) 清华大学出版社 谭浩强编著教学过程设计:1、新课讲授75分钟2、课堂练习10分钟3、总结5分钟授课类型:理论课 教学方式:讲授 教学资源:多媒体 教案17授课题目第八章 指 针课时安排

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

当前位置:首页 > 建筑/施工/环境 > 项目建议


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号