C程序教学简案

来源:互联网 发布:苹果手机赚钱软件大全 编辑:程序博客网 时间:2024/03/29 19:27

第一课

主要内容:C语言的特点与作用、程序的实质、VC开发环境的使用、写程序的方式方法及规范。

Exam1:演示Hello程序。讲解预编译行、头文件(找出头文件的位置)、main()函数、scanfprintfwhile语句、IDE环境介绍、程序运行的整个过程(产生objexe文件)。

学生完成:1001

Exam2(SMU1002):输入一个整数N,请你计算1+2+…+N

演示编程的整个过程。

数据表达(int n,sum;)à算法(sum=(1+n)*n/2)à代码à调试、运行。

学生完成:10021003

点评:格式、调试。

数据处理、科学计算

主要内容:用while(scanf("%d",&n)!=EOF){}处理不定的多个数据、freopen()介绍、赋值语句、输出语句格式、TC使用。用文件输入、输出数据。

Exame(SMU1005):给出一串的数,请你求出它们的和。

学生10051006

循环思想初步

主要内容:for语句、编程的整个过程、流程图

Exam(SMU1007计算n!n!=n*(n-1)*(n-2)*……*1

学生10021007

条件语句

主要内容:ifelse if、嵌套

Exam(SMU1004找出两个数中的最大数。

学生1004100810111018(先做再讲,能几道就几道,但不能空)

循环语句

主要内容:forwhiledo{}while、三种语句的比较、流程图、i++i--++i--i

Exam1038 列出不大于n的数

注:此课要讲透,用流程图解说,同一个问题用三种不同的

循环实现。

条件语句的深入

主要内容:1. a>b:a,b    2. switch case  3. ASCII

Exam1 1027给出一百分制成绩,要求输出成绩等级‘A’‘D’‘C’‘D’‘E’90分以上为‘A’80~89分为‘B’70~79分为‘C’60~69分为‘D’60分以下为‘E’。如果输入别的字符,则“error”.

Exam2 1004 找出两个数中的最大数。

一维数组(开始放慢脚步、并注意点评学生的答题)

主要内容:数组的定义、下标的含义,数组与循环。

Exam1

学生 109610771137(以后做)

二维数组

主要内容:数组的定义、下标的含义,数组与循环。特别是嵌套循环。

例题与练习:106510661073107410571075(难可放在后面)

注意:这一段学生的问题较多,要及时处理。对数据的输入、输出的处理也要理清。可以让学生多演示。此时的Debug是教学生如何检查下标越界。

函数初步

主要内容:字符函数、memset()与string.hmath.h的内部函数、特别是随机函数。

例题与练习:10721081

注:此部分函数较多,对典型的一些函数进行示范,其它由学生自学完成。这里可以布置学生一次自行设计的作业。

自定义函数

主要内容:如何自定义函数、局部变量与全局变量、变量的生存期。

例题与练习:用前面做过的最大公约数、最小公倍数、1110

注:函数较为抽象,学生间的差异较大。教师要讲透,一步步带。特别要使学生明白形参与实参的关系和使用。

指针初步

主要内容:指针的定义和引用、指针变量与引用的变量间的关系。

示范:通过输出语句揭示指针是变量的地址。

Exam 1011 三角形的面积

带学生看例题 P230 三个数的排序。

注:对学生一时不好理解的内容要注重让学生掌握学习方法,如带学生学会看书等。

指针与数组、数组的应用

主要内容:数组名是数组的首地址、如何定义与引用。

用指针输出矩阵。与学生讨论,有几种不同的方法。

数组的应用:11321137

注:指针的内容较为抽象,可以分多次进行,并与前面的问题结合,也就是讲评学生的问题时,用指针处理。

递归

讲:求n!。

练:11281082113110171142。外1134

注:要讲清楚递归是将问题转化成更小的类似的子问题,递归的出口,参数的调用等。

注:递归的套路明显,学生对函数的递归容易掌握,但以后在深搜中应用复杂,因此要打好基础,逐步提高。

逻辑与程序

114611471148

注:这个内容学生不好掌握,可放在提高的场合处理。

自定义结构

把整体作为一个数据,就是自定义的结构 

如平面上的点(xy),定义为

.struct point{

.int x,y;

};

.struct point p1,*p2;//定义两个点,p2是指针变量

.p1.x = 3 ;//对点p1中的x赋值

.p2->x = 3 ;// 对点p2中的x赋值

110511061136

注:此内容是学线性表的基础,要多带几题。

枚举

主要内容:枚举类型enum、枚举方法

教法:带学生看P325取球的你码。

练:1149(变更问题写代码—模仿)

二分法

主要内容:二分法求根、二分法查找。

11531165

注:此问题思想及为重要,代码有点复杂,可以画流程图让学生完成写代码。

链表

主要内容:链表的结构、结构变量的使用。

11781179118011811182

文件

主要内容:文件的格式、读取等。

指导课程设计。其实是一次处理文件数据的作业。

复习

复习要对知识进行归纳总结,对学生有明确的要求。

…………

后期学生做的题目问题较广,出现的问题较多。课堂处理可以让学生当小老师、每课达标一题。适当要插入一些讲评与处理问题的课。