C语言指针教学设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
C语言指针教学设计
1.关于C语言程序设计中的指针
C语言程序设计是高校理工科专业的一门重要专业或公共基础课,不仅是计算机相关专业学生进一步学习汇编语言程序设计、数据结构计算机操作系统、硬件编程等课程的入门级课程,同时也是非计算机专业学生了解计算机软硬件基础知识和计算机底层原理的重要手段之一.在教学内容的组织上,强调和分析指针与基本数据类型、函数、数组的内在联系,灵活设计教学程序实例,为学习者掌握指针及c语言程序设计创造良好条件。指针是C语言的教学重点,程序使用指针可以带来很多方便,如:
1)灵活操作数组(含字符串);
2)动态分配内存;
3)表示复杂的数据结构;
是让程序更加简洁高效的重要手段。然而指针也是C语言学习的最大难点,学习者普遍感觉指针概念抽象,致使无法正确理解并使用指针,而指针的使用稍有不慎,往往会给c语言程序带来致命的错误。
2.学生分析
在讲指针内容之前,学习者经历了基本数据类型、运算符和表达式、输入输出函数、选择制语句、循环控制语句、函数、数组等内容的学习。而指针内容之后,一般还要讲授指针与字符串、指针与数组、结构体与共用体、文件操作等内容。其中指针起到了承前启后的作用,学习并掌握指针,对学习者获得程序设计技巧和能力、继续学习其它计算机专业课程至关重要。
3.教师自我思考
在课堂教学中起主导作用的教师,应根据指针教学所必需的基础知识,在授课过程中不断调各关键知识点的重要性,尽可能在指针内容的学习之前,使学习者具备理解指针概念的基础知识和基本能力。在教学内容的组织上,强调和分析指针与基本数据类型、函数、数组的内在联系,灵活设计教学程序实例,为学习者掌握指针及c语言程序设计创造良好条件。
4.学生学习方法建议
学习本章内容时,应重点掌握指针与指针的区别、指针的引用方法和运算,并在此基础上进一步理解指针作为函数参数和在数组当中的的应用,要求多读程序,理解编程的算法、编程的思路,并仿照例题多编程序、上机练习,真正掌握11 / 1
指针的灵活应用。
5.教学目标
(1)知识层面:
a)使学生掌握指针和指针变量的概念、表达方式和区别;
b)使学生掌握指针作为函数参数的使用;
c)使学生初步了解指针在数组中的应用;
(2)能力层面:
在编程语言环境熟练应用指针编写一些简单程序、并且经过不断的锻炼深化能力、最终掌握指针的应用
(3)认知层面:
深刻理解指针的相关概念和指针做函数参数和在数组当中的应用
6.教学重点与难点
(1)教学重点:
指针做函数参数和在数组当中的应用
(2)教学难点:
如何让学生更好地明白指针的概念
处理方法:用图示和结合实列并尽力用通俗易懂的语言帮助学生理解指针和指针的应用
7.教学内容设计
教教学过程设计意图和目的学
内容标题如果在 C 程序中定义了一个变量, 计算机会自动分配一举出实例让
初指次了解指针变那么我们对变这对用户是完全透明的, 个存储单元给它针,
量的学生更容, 的这种量的操作实际上就是对存储单元里的内容进行操作易了
解指针和导直接存取。另外一种存取方式是存取变量值的方式称为指针变量的含这种存取方式大体思想是如果想操作存储单间接存取入,
义元a 里的内容可以间接地通过存储单元b 来完成。打个, A 有房间的钥匙打开一个房间有两种可能性比方, :
房房间A A 房间; 间的钥匙放到了 B, 有 B 直接打开, 房间钥匙后 , B 现在可先打开间的钥匙, 房间找到A
也叫间接访问。指A这属于间接打开,访问再将其打开,
11
/ 2
11
11
/ 4
printf(max=%d,min=%d\n,*p1,*p2); return 0;
}
a,b问题:请问横线处应该如何填写?才能从大到小输出两个数的值
让学生了解指b指两个整数,按从大到小的顺序排列输例子:按输入a和针变量形参和针和b 出a实参的值得传变程序编程:#include
为{
void s *p_1,int *p_2);//对函swap函数的声明
a //定义两个整型变量int a,b; 数
参b 和型的指//定义两个int * 数int *p1,*p2;
的针变量
printf(Please enter a and b:); 例//输入两个整数scanf(%d %d,&a,&b); 子
指向a //使p1 p1=&a;
b //使p2指向p2=&b;
swap函数如果//a
printf(max=%d,min=%d\n,a,b);//输出结果
return 0;
}
函数void s *p_1,int *p_2) //定义swap {
//定义一个整型的中间变量temp int temp;
进行交换和//使*p_1*p_2 temp=*p_1;
*p_1=*p_2;
*p_2=temp;
将输出结果展}
示出来更易于,*p_2,现*p_1两个数的交换,就如同有三个盒子temp,分析程序*p_2在*p_1和两个盒子都装满了东西,并且要把两个盒,才能使他子的进行交换,此时,必须借助三个盒子temp 们进行交换。
输入84
63结果如11
/ 5
图让学生明白数通
组指针的概念过和了解指针的指一些运算针应用(1)数组元素的指
针数
组既然指针变量可以指向变量,同样地也可以指向数组元,如: 素。所谓数