第一篇:中职C语言课程教学心得
文/龚翠芹
【摘 要】本文在分析C语言特点和功能的基础上,强调中职教学要合理地制定教学目标、合理利用教材灵活教学,并提出了中职C语言教学策略。【关键词】C语言;计算机;教学方法;教学目标
C语言是一种实用性强的编程语言,它不仅可以编制系统程序,也可以编制软件程序,具备灵活、高效的数据处理能力,这种程序设计语言备受青睐,多年来一直被使用,很多计算机科研类项目都必须应用到C语言。
一、C语言的特点和功能
中职学校是重点培养学生掌握技能的学校,所以,一定要让学生们认识到学习C语言的重要性,特别是认识到C语言的特点和功能,这样才能学生们更爱学习这门课程。下面,我介绍一下C语言的特点和功能。其特点有三点:1.它是中级语言,可以把高级语言的基本结构和语句与低级语言的实用性结合起来。2.它还是汇编语言,可以操作计算机中的工作单元:字节、位和地址;3.它也是结构式语言,可以分隔代码和数据,也就是让程序中每个部分相对独立,这样保证了程序中各结构层次清晰、维修便捷。C语言的功能:做底层驱动、嵌入式?通信行业、银行系统、写操作系统、片机开发机的软件系统基本都是用C语言开发。尽管C语言的功能强大,但我们也不能认为学了C语言基本上可以解决一切问题。其实不然,学完了C语言只是学到了语法,如果想要进行开发还需要学习相关知识,就好象学会了英语语法并不代表会用英语写文章一样。
二、合理的制定教学目标
中职学校重在培养学生们的专业技能。但是也要认识到中职学生的学习特点,这些学生们普遍学习能力较差,学习热情较低,所以,要根据其实际情况合理的制定教学目标,这样才能保证所学知识能够被完全消化,从而不仅有利于调动学生们的学习热情,也为以后的拔高学习打下坚实的基础。我校的教学目标是培养学生们掌握C语言的基础知识和基本技能。基础知识的培养有利于提高学生们分析和解决问题的能力,更有利于培养学生们的逻辑思维能力,这样学生们有了编程的思路,为以后的后续学习打下了坚实的基础。
三、合理的利用教材进行灵活教学
C语言是一门复杂的计算机课程。这门课程的特点是:概念较多、规则复杂、语法应用难度较大等,这对于初学者来说很有挑战。所以,教师一定要认清教学形势,在教学中讲究方法和策略,这样才能保证教学的顺利开展,才能达到良好的教学效果。多年来经过分析和总结,我认为要做好以下两点内容:1.有选择的挑选教学内容进行教学。也就是说根据学生们的能力和特点,有选择的挑选适合他们理解和掌握的知识进行教学,这样才可能让学生们听懂、学会,如有教学要求中必须掌握的难点、重点知识,就需要教师多耗时间进行讲解,千万不可操之过急,以免影响学习效果;2.培养学习兴趣,灵活的进行教学。C语言教学内容很枯燥,这就需要教师采用灵活的教学方式,从培养学生们的兴趣入手进行教学,这样才能保证学生们有学习的热情,才能达到教学的目的。举个例子:教学中先教学生们一些简单的编程知识,从而激发学生们的学习兴趣。如自制一个自动关机的小程序,这个程序制作难度小,操作又简单,学生们可以从制作这一个小程序中就认识到编程的乐趣,从而开始喜欢上这门课程,进而提高了学习成绩。
四、教学中要改善教学方法
教学方法是提高学习成绩的有效手段,只有选择正确的教学方法才能达到更好的教学效果。对于C语言课程的教学,传统上还是采用首先讲解、然后练习、进而巩固、最后考试等步骤来完成教学任务,这种教学方法有其优势,但我们不得不承认,随着教学的发展,这种教学方式已经逐渐暴露其弊端。枯燥的教学方式已经不能激发学生们的学习热情,根本就不能达到教学发展的目标和要求。所以,教学方法急需改革,这样才能提高教学质量。下面,我列举一下C语言教学中使用的新方法:1.项目教学法。这种教学方法需要教师做好备课工作,首先教师要根据教学内容挑选一个项目,然后教师在课堂上正常讲解教科书内容,课程结束后布置这个项目让学生们自主完成,教师可以给与一定的指导,学生们在整个过程中是靠自己来完成任务,这样的学习过程不仅让学生们对这个知识的理解和掌握更加透彻,也培养了学生们独立思考、解决问题的能力;2.合作教学法。对于有难度的教学内容可以应用这种教学方法。它需要教师选择一个有难度的编程任务,最好编程内容可分几个部分,这样教师可以对学生们进行分组来完成这个任务,每个同学都可以参与到这个任务中,为了尽快完成任务,同学们需要分工合作、共同努力,在整个过程中,不仅让学生们有了合作的意识,更培养了学生们互相帮助的精神。还有很多教学方法就不一一列举了。总之,良好的教学方法可以在教学中发挥重要作用,它不仅提高了学生们的学习成绩,也提高了学生们的整体能力。在以后的教学中,教师要多多应用,积累经验,从而完善教学方法,提高学生们的学习成绩。【参考文献】
[1]上官珺.高职院校C语言程序设计教学方法探索[J].闽西职业技术学院学报.2008(03)[2]刘霞,郭晓利,赵志明.C语言教学改革探索与实践[J].吉林省经济管理干部学院学报.2003(05)[3]宋春秀.高职《C语言程序设计》课程教学改革的探索[J].网络财富.2010(22)【作者简介】
龚翠芹(1976.10-),女,江苏射阳人,就职于江苏省射阳中等专业学校,本科,中学一级教师,研究方向:计算机应用。
第二篇:c语言心得
C语言学习心得
林林总总的计算机语言,林林总总的计算机技术,林林总总的计算机书籍让我们初入计算机的菜鸟一次就吓的没有勇气。迷茫和徘徊让我们丧失了时间和信心。没有诀窍吗?有的,看你怎么把握了,接下来我就以C语言为例子,讲一下有关学习的方法和技巧,同时也分享一下我学C的感想。
许多人第一次接触C语言都会觉得C语言难懂和不容易使用,其实就我个人的看法,C语言其实是很基础的汇编语言,除了一些必须要记忆的关键字、语法和库函数,其余的都是需要靠自己的逻辑思维通过这些关键字、语法和库函数来组织或构成一个完整的函数,所以C语言大多数的学习时间都是在锻炼我们的抽象逻辑思维能力。只有当你具有了抽象逻辑思维能力和弄清楚了关键字、语法和库函数的相关知识后,编写C语言就不是难事了。通过C语言初步的学习后都很容易弄懂关键字、语法和库函数的相关知识,但是由于大部分人因为以前没有接触过电脑或电脑语言的相关知识所以缺乏抽象逻辑思维能力,不知道如何将所学到C语言的知识如何组织和构成一个完整的函数,那么如何来有效的锻炼自己的抽象逻辑思维能力呢?
在这里是我个人的一套自学心得,通过学习后所掌握的知识使用上课老师所提到的案例或找一段简单的完整的案例,然后将案例读懂,也就是把它转换成我们日常所能接受的自然语言(在这里不妨把你所能理解的自然语言写下来)。例如下面这段代码是手工输入两个整数数字并计算两个数字之间从最小的数字开始到最大的数结束其中所有奇数相加的和:void main()
{
首先INT是表示整数形数据的定义,那么接下来有两个未知的整数和一个已知的整数0;这里出现的3个整数数字用C语言里的变量来替代它们,这时第一个数字就用取名为NUM1的变量,第二个数字就用取名为NUM2的变量,第三个数字就用取名为X的变量并且用赋值符号来为它赋予0这个值。
int num1,num2,x=0;
由于知道了有两个未知的整数,所以要通过键盘输入使这两个未知的整数变成已知的整数并且储存在前面所提到的变量中。
scanf(“%d%d ”,&num1,&num2);
得到数字后下面就开始进行一系列的运算和判断,如果NUM1小于NUM2的话最小的数字就是NUM1最大的数字就是NUM2,如果NUM1这个变量不小于NUM2的话就跳过这个{}所包含的内容。开始进行循环。
if(num1
{
NUM1到NUM2之间的数字个数不是固定的,不能得到固定的循环起始点,所以这里的循环起始点就不输入代码中,但是通过题目中的提示知道NUM1这个变量如果大于NUM2的话循环就终止了,而NUM1这个变量还需每循环一次就必须改变其值。由于NUM1到NUM2之间的数字列如1-9每个数字跟其右边的数字都是存在加1的关系,所以这里就可以把NUM1这个值用做循环的“计数器”每循环一次就让NUM1加1,让其跟NUM2做比较是否结束循环。
for(;num1<=num2;num1++)
{
在循环当中将每次循环所改变的变量NUM1的值除以2来判断其是否是奇数,如果用2除后余数为0的话就是偶数(因为偶数是不参加运算的)一旦判断其为偶数就用continue这个关键字来跳出一次循环。
if(num1%2==0)
continue;
那么NUM1的值除以2余数为1的话就是奇数(奇数是要参加运算的)一旦判断其为偶数就用下面这个公式来使其进行相加,因为已知X变量的值是0那么下面的公式就可以理解为假设NUM1=1,X=0+1;这时X的值已经发生变化,X=1;假设NUM1又等于3,X=1+3;以此类推直到循环结束X+NUM1也就结束了。
x=x+num1;
}
}
那么NUM1这个变量不小于NUM2的话NUM1是最大数,NUM2是最小数,开始执行{}内的内容。
else
{
for(;num2<=num1;num2++)
{
if(num2%2==0)
continue;
x=x+num2;
}
}
最后通过显示器输出显示X这个变量的值也就是所有奇数的总和。
printf(“%dn”,x);
}
由于计算机读取C语言代码时是从main()函数开始由上自下的逐一读取一条代码并运算的,所以从int num1,num2,x=0;开始来用自己所能接受的自然语言来描述这段代码。最后将你所记录的自然语言转变成伪代码在转到流程图,这样反复努力多次后,就一定可以达到有效的锻炼自己的抽象逻辑思维能力。另外还需注意的就是自己实在无法理解的地方不妨指出来多多请教老师和懂的同学让他们用自然语言来描述一道,并且记录下来这样可以达到事半功倍的效果。
我觉得入门还是多看些书,多实践,养成良好的编程习惯,在实践的同时多思考问题,多看别人优秀的解题思路与方法,多看别人优秀的代码,尝试自己去实现或者说模仿着去实现,让别人对你的代码多提意见,探究别人的思维过程,增强自己的思维能力,拓展视野,经常看看自己以前写的东西,有空拿出来改良改良,我想每隔一段时间,都会有意想不到的收获。
第三篇:C语言程序设计课程教学设计
C语言程序设计课程教学设计
苏小红
一 课程内容体系 :
基本描述
课程名称: C 语言程序设计
英文译名 : C PROGRAMMING LANGUAGES 总 学 时: 50 ; 讲课学时: 30 ; 实验学时 : 0 ; 上机学时 : 30 授课对象 :非计算机专业 本科生 授课单位 :计算机科学与技术学院 主讲教师 :苏小红等
先修课程 :高等数学,计算方法 课程要求 :必修课 课程分类 :专业基础课 开课学期 : 2
教学定位 :
本课程为专业基础课,属我校所有理工科专业本科教学计划中的主要必修课程之一。在计算机教育方面,C 语言是为数不多的与国外保持内容同步的课程之一,可见,它在本科生教学中的地位之重要不言而喻。由于 C 语言是许多后续专业课程的基础,因此,在本科生教学体系中中,C 语言教学仅是起点,而非终点。本着面向未来的精神,本课程的教学宗旨是要努力把 C 语言从应试课程转变为一种实践工具,主要目的不再局限于使学生单纯地了解和掌握 C 语言的基本语法规范,而是要致力于培养学生运用 C 语言解决实际问题的编程能力,以 C 语言为工具,介绍程序设计的基本思想和方法,培养学生无论以后在学习、工作中使用什么语言编程,都能灵活应用这些思想和方法的能力。
知识点与学时分配 :
第 1 章 程序设计 ABC(1 学时)
计算机与人之间的关系、计算机与程序设计语言之间的关系、程序设计语言的故事、程序设计语言的工作机理。
第 2 章 数据类型、运算符与表达式(3 学时)
为什么引入数据类型、C 语言基本数据类型、常量、变量、算术运算符、关系运算符、逻辑运算符、赋值运算符、增 1 减 1 运算符、强制类型转换运算符、位运算符、逗号运算符、运算符的优先级和结合性、各种运算表达式。
第 3 章 简单的 C 程序设计(2 学时)
C 语句分类、表达式语句、复合语句和空语句、字符输入输出函数、格式输入输出函数。第 4 章 程序的控制结构(5 学时)
算法的概念及其描述方法、条件语句、循环语句、流程转移控制语句(goto、continue 和 break)、自顶向下、逐步求精的结构化程序设计方法。第 5 章 函数(4 学时)
程序结构的艺术、函数定义、函数调用、函数返回值、函数原型、参数传递、变量的作用域和存储类,函数封装、模块分解原则、模块化程序设计方法。第 6 章 数组(4 学时)
一维数组、二维数组、向函数传递一维数组、向函数传递二维数组、字符数组、字符串处理函数。第 7 章 指针(4 学时)
指针的概念、为什么引入指针的概念、变量的指针作函数参数、字符指针做函数参数、指针和数组之间的关系、指针数组、代码风格、防御性程序设计。第 8 章 结构体和共用体(4 学时)
结构体类型、结构体变量、结构体数组、向函数传递结构体指针、共用体类型。第 10 章 文件操作(2 学时)
计算机中的流、文件、基本文件操作、高级文件操作。复习总结(1 学时)
第四篇:《C语言程序设计》课程教学设计
《C语言程序设计》课程教学设计
理学院电子科学系计算机基础教研室 赵永梅
《C语言程序设计》是大学计算机基础教学系列中的核心课程之一,是计算机及信息类专业本科生必修的一门专业基础课。它讲述了C语言的语法、数据类型、结构化程序设计方法等方面的内容,从而形成一个比较完整的、系统的计算机及信息类专业计算机程序设计基础教学内容,是学员从技术的角度学习计算机的主要基础课,具有不可替代的基础性、先导性和全局性作用。
一、课程教学对象分析
本课程的教学对象是培训部计算机类专业一、二年级本科层次学员。所有教学对象都应该已经学习过《大学计算机基础》,但由于学员的计算机基础的较大差异,针对教学对象的实际情况,应当根据教育部高等学校计算机科学与技术教学指导委员会《关于进一步加强高等学校计算机基础教学的意见》暨计算机基础课程教学基本要求,给以适当的分类、分层次教学,即一般要求和较高要求,使学员掌握C语言的简单程序设计的基本技术和方法。
二、课程基本理念
本课程以培养复合型的专业技术人才为目标,全面贯彻素质教育和创新教育思想,着力提高人才培养质量。通过本课程的学习应使学员掌握正确的程序设计方法与思想。具有初步的利用计算机分析问题、解决问题的意识与能力,为学员将来到社会从事专业应用软件的开发打下重要基础。
三、课程设计思路
以本课程的基本理念为指导,对课程目标分别从知识与技能、过程与方法、情感态度与价值观等方面进行了具体明确的阐述。课程内容与教学要求主要阐述学员学习本课程必须掌握的内容要点及达到的基本要求,并注明了重点和难点。在实施建议部分,分别对课程教学实施、课程考核评价、教材选编使用、课程资源开发与利用以及教学保障等提出了明确建议。本课程是一门实践性很强的课程,应改变传统的注重语法规则的应试型教学模式,合理安排教学实践环节,加强程序设计技能的教学,以培养学员的专业技能,突出学员学习的主体地位。可通过与实际应用结合紧密的例题,增设小型工程应用项目的研究或运用案例式教学,提高学员编程的技巧。
四、课程教学目标
以《计算机程序设计》的课程标准为参考,根据教育部新的精神和要求,通过课堂教学与实践教学,让学员了解《C语言程序设计》这门课程的性质、地位和在工程应用中的价值;熟练掌握C语言的语法,掌握程序设计的基本思想和方法,具备良好的程序设计风格和程序的调试技能。能够利用软件工程的思想,运用数据结构基本知识和算法,解决实际生活中或者专业课中涉及到的实际问题,从而培养学员分析问题、解决问题的能力。
五、课程教学内容
(一)教学内容
根据《C语言程序设计》课程标准,参照相关专业人才培养方案以及后续课程的开设情况,讲授8个教学单元的教学内容。
第一单元:C语言概述
教学内容:C语言的特点、C语言源程序简介、C语言源程序的基本结构、C程序的编辑、编译、链接和运行
学时分配:讲课2学时,实习2学时
目的和要求:了解C语言及其特点、掌握C语言源程序基本结构、掌握C语言源程序集成开发环境
重 点:C语言源程序的基本结构。难 点:C语言源程序集成开发环境。第二单元:基本数据类型及其运算 教学内容:C语言的基本数据类型及其分类、变量与常量、各种运算符及其表达式
学时分配:讲课4学时,实习2学时
目的和要求:了解C语言的数据类型、掌握常量与变量的概念和使用方法、掌握C语言中的整型数据、浮点型数据和字符型数据的表示方法、掌握各种运算符和表达式的使用方法、掌握各类数值型数据之间混合运算的方法
重 点:基本数据类型及其分类 难 点:各种运算符和表达式的使用 第三单元: 结构化程序设计
教学内容:算法的概念及特性、算法的描述、结构化程序设计方法、C的语句、赋值语句、数据的输入与输出、顺序结构程序设计、关系运算、逻辑运算和条件运算、if语句、switch语句、while、do„while、for、break、continue语句、循环结构程序设计
学时分配:讲课22学时,实习6学时
目的和要求:理解算法的概念和特性、掌握用N-S图描述算法、初步了解结构化程序设计的思想、掌握用N-S图描述三种基本结构、掌握C语句的种类和特点、掌握数据输入、输出的方法、掌握顺序结构程序设计方法、掌握关系运算、逻辑运算和条件运算、掌握if语句和switch语句的执行过程、掌握选择结构程序设计方法、掌握三种循环语句的执行过程和区别、掌握break和continue语句的用法、掌握循环结构程序设计方法。
重 点:算法的概念及特性、C的语句、逻辑运算,if语句和switch语句构成选择结构、三种循环语句
难 点:掌握用N-S图描述算法、数据的输入与输出、switch语句的执行过程、循环结构程序设计
第四单元:函 数
教学内容:函数的定义与声明、函数的调用与返回、数组作为函数的参数、变量的存储类别、内部函数和外部函数
学时分配:讲课4学时、实习2学时
目的和要求:理解函数的基本概念、掌握函数的定义、声明、调用和返回、掌握数组作为函数的参数的特性、掌握变量的作用域及存储方式、了解内部函数和外部函数的使用方法及区别
重 点: 函数的定义和调用,数组作函数的参数 难 点: 函数的递归调用和嵌套调用 第五单元:数 组
教学内容:数组的概念、一维数组的定义、引用和初始化、二维数组的定义、引用和初始化、字符数组的定义、引用和初始化、字符串处理函数
学时分配:讲课6学时、实习2学时
目的和要求:理解数组的基本概念、掌握数组的定义、初始化和数组元素的引用方法、掌握字符数组和字符串处理函数的使用、掌握与数组有关的常用算法(冒泡排序和选择排序)
重 点:数组的定义、初始化和数组元素的引用 难 点:二维数组和字符数组的应用 第六单元:结构体和共用体
教学内容:结构体类型及其使用方法、指向结构体类型数据的指针、用指针处理链表、共用体类型及其使用方法、枚举类型及其使用方法、用typedef定义新类型
学时分配:讲课4学时、实习2学时
目的和要求:理解结构体、共用体类型和枚举类型的概念、掌握结构体、共用体和枚举类型数据的使用、了解用指针处理链表的方法和意义、掌握typedef命令的使用方法
重 点:结构体、共用体类型和枚举类型数据的使用方法 难 点:指针处理链表的方法 第七单元:指 针 教学内容:指针的概念、指针与变量、指针与数组、指针与字符串、指针与函数
学时分配:讲课6学时、实习2学时
目的和要求:理解指针的概念、掌握指针变量的定义、引用方法及运算、掌握通过指针访问数组的方法、掌握通过指针处理字符串的方法、掌握使用指针作为函数的参数、掌握函数指针、掌握指针数组和指向指针的指针
重 点:指针的概念、指针作函数的参数、数组的指针和字符串的指针
难 点:函数的指针、指针数组和指针的指针 第八单元:文 件
教学内容:文件类型指针、文件的打开与关闭、文件的读写 学时分配:讲课2学时,实习2学时
目的和要求:掌握文件概念及文件的打开与关闭、掌握文件的顺序和随机读写、了解文件的出错检测
重 点:文件的打开、关闭和读写函数的使用 难 点:文件类型指针
(二)教学实践
本课程是一门实践性很强的课程,上机实习是教学过程中的一个重要环节,目的是使学员熟练掌握C程序编辑、编译、链接和运行的基本步骤,提高学员在TURBOC环境下,运用C语言对具体问题进行程序设计的能力。按照课程标准,本课程共安排20 学时的上机实习。
为了更好地开展教学实践,给每位学员统一发放了与主讲教材配套的上机指导书《C程序设计上机实践指导书》,以辅助理论教学,提高学员的程序设计的能力。
实践教学内容与课时分配如下: 实验1: TURBOC 2.0环境下的基本操作 课时分配:2学时 实验目的:
(1)掌握TURBOC 2.0的基本操作;
(2)掌握TURBOC 2.0环境下编辑、编译、链接和运行程序的基本方法;
(3)初步了解C语言源程序的基本结构。实验2 :基本数据类型及其运算 课时分配:2学时 实验目的:
(1)掌握C语言的基本数据类型,学会变量的定义和赋值;(2)熟练掌握C语言有关运算符、表达式的使用方法;
(3)进一步熟悉C语言程序的编辑、编译、链接和运行的基本步骤。实验3: 顺序结构程序设计 课时分配:2学时 实验目的:
(1)熟练掌握各种基本类型数据的输入、输出方法;(2)熟练掌握赋值语句的使用方法;
(3)熟练掌握格式输入、输出函数的使用方法。实验4 :选择结构程序设计 课时分配:2学时 实验目的:
(1)掌握关系表达式、条件表达式以及逻辑表达式;(2)熟练运用if语句的不同形式编写程序;(3)掌握switch语句的使用方法。实验5: 循环结构程序设计 课时分配:2学时 实验目的:
(1)熟练掌握while,do„while,for语句的使用;(2)掌握在程序设计中用循环方法实现的一些常用算法;(3)进一步熟悉调试程序的方法。实验6: 函数 课时分配:2学时 实验目的:
(1)掌握实参和形参在函数间进行“值传递”的对应关系和传递方法;
(2)掌握函数的嵌套调用和递归调用;(3)理解变量的存储类别和作用域。实验7: 数组 课时分配:2学时 实验目的:
(1)掌握数值型数组的初始化和输入、输出的方法;(2)掌握字符数组的初始化和字符串的输入、输出方法;(3)掌握数组下标的表示方法。实验8: 结构体与共用体 课时分配:2学时 实验目的:
(1)掌握结构体类型和结构体变量的定义和使用方法;(2)学会构造合理的数据结构解决实际问题的方法;(3)理解动态内存分配的概念;(4)掌握简单链表的定义和操作;(5)掌握共用体数据的定义和使用方法;(6)掌握枚举类型数据的定义和使用方法。实验9: 指针 课时分配:2学时 实验目的:
(1)理解指针和地址的概念;掌握指针变量的定义和使用方法;(2)掌握用指针处理数组的方法;(3)掌握字符串指针的使用方法;(4)掌握函数的指针的使用方法;(5)掌握指针数组和指针的指针的使用方法;(6)掌握指针变量的运算。实验10: 文件 课时分配:2学时 实验目的:
(1)掌握文件的打开和关闭方法以及文件的读写方法;(2)了解文件的定位以及出错的检测。
六、教学方法手段
(一)教学方法
通过对基础知识的讲解,突出基本概念、基本思想的讲授和基本技能的训练,结合案例精讲多练,注重讲解与实际应用结合紧密的例题,加强实践练习。在教学过程中,贯穿“讲授式”、“启发式”、“案例式”、和“研讨式” 等教学方法。
注意教学方法的灵活性,教学过程中,借助现有的多媒体设备,灵活运用教学方法,再现问题情景,增加互动氛围,培养学员分析问题、解决问题的能力和探究意识。
作业量每次3-5题,难度应当适中,教员应做到定时批阅,及时讲评。
注重实践环节。实习课(20学时),在教员指导下,单人单机自主进行。实习内容根据程序设计基本技能中的要求合理设计,依次实施。
适当增加一些小型项目或以大作业的形式,使学员进一步加强学习的自主性,培养解决综合问题的能力。
(二)备课与课堂设计 1.备课
按照人才培养方案、课程标准和教学基本要求,在开课前需要深刻理解本课程各单元的主要教学内容,以课程教学组为基本单位组织集体备课,统一教学要求、统一授课标准、统一课程进度。认真撰写教案、制作课件并对针对重点如何突出、难点如何突破进行讨论与试教练讲。
2.课堂设计
将课程的全部教学内容分解落实到有限的25次课堂面授(50学时)和10次自主上机实习(20机时)之中去。在开课之前适当时候组织学员进行摸底考试,并且在开课后的两周之内及时组织召开教学联系会,全面了解学员对C语言的掌握情况和掌握程序设计方法的情况,以便因材施教,有的放矢。
七、教学评价
本门课程采用笔试与上机考试(机试)成绩相结合的方式评价。笔试成绩占70%,上机考试成绩占30%。
第五篇:C语言程序设计心得
C语言教学心得交流
通过本次教师发展在线的C语程培训中,我受益匪浅,几位教授的精彩演讲,让我找到了自己的不足和日后教学中的改革方向和内容。同时,也让我感觉到了,有今天各位教授的良好教学效果,这其中包含了他们的艰辛、背后的大量付出和无私奉献。
我是一直从事C类语言的教学工作,对C语言的教学已有5年教龄,在这几年的教学过程中,我们也一直在寻找好的教学方法和新的教学理念。通过本次学习,我总结要教好《C语言程序设计》这门课,最基本要把握好以下几个方面:
(一)要重视实践环节,上机调试成绩非常重要。
学习一门语言,就是要按照它的语法来编程。要编程,当然就要上机操作来验证你程序的正确性。所以上机非常重要,通过执行你所写的程序,完成你所写程序的目标,最终达到你的目的。而且通过执行程序,你会发现程序中的错误,从而使你了解你所学知识中的不足,同时,要学会根据编译时提示的错误来改正程序中发生的错误,以便下次不会再犯同样的错误。
(二)基本语法学习虽然枯草乏味,但是它相当于高楼大厦的一砖一瓦,一定要下硬功夫让学生掌握熟练。
C语言的语法部分。这部分内容是学好C语言的基础,只有学好了这些语法,才会写程序,看程序。所以对一个初学者来说,这部分内容是非常重要的,所以要扎实地熟悉每一个语法,并能根据这些语法来编程。
(三)学习要抓住重点,难点部分要多讲、多学、多练。
通过这次学习使得我对C语言的重点,难点,以及易出错的地方把握的更精准了。当然,这只是针对我个人而言。在C语言学习过程,重点就是数组,指针,以及结构体了。难点也是它们了,不过数组和结构体还是挺简单,所以在此主要就指针方面谈谈自己的看法。
下面谈谈通过这次学习,结合我们学校的教学情况,打算对该课程的教学进行如下几个方面的改革:
(一)理论教学内容的组织
C语言的重点知识包括:结构化程序设计方法、流程图的组织、三种程序设计结构、三种基本数据类型和三种自定义数据类型;难点包括:结构程序设计方法、算法的分析、流程图的组织与设计、函数、指针等。
根据知识内容和每年的新学时安排,我们将理论教学内容分为授课内容和自学内容两大模块。
(1)授课内容
C语言的授课内容分为两阶段:①基础准备阶段 这部分内容确保学生“实用、够用”,主要包括三种基本数据类型(只要求掌握常用的int,float,char);三种常用运算符及其表达式(赋值、算术、逻辑(包括关系));三种程序设计结构(顺序、选择、循环)。②实训项目驱动阶段 这部分内容主要是“实训实战”,主要包括数组、函数、指针和结构体。通过第一阶段的学习,学生已经具备了一些程序设计的基础知识,在这一阶段将通过一个实训项目的完成来熟悉主要内容,同时巩固第一阶段的成果。
(2)自学内容
课本中的内容上课没重点介绍或者说就是没提到的,划为自学内容。但这些内容,我们并不是在课堂要求学生回去自学:要求过高,规矩过多,这样效果不佳。而是让学生在实验中发现问题后,带着问题去学习,去找答案。
例:整型 我们只介绍int基本类型,当学生想计算n!时,学生测试5!=120时,他可能会去测试20!、50!,这时,存放阶乘的变量Factorial再定义为int,结果就是0了,这时问题就来了,他就会去寻找正确的处理方法(long int)。
(二)实验教学的安排与设计
教学改革方案确定后,我们对本课程实验教学上从多方面进行了教学更新。我们考虑到学生处于了解计算机语言及编程的初级阶段,有许多最基础的内容有待掌握,所以本课程的实验教学不太适合完全以项目开发的形式进行,注重的是加强模块化实训。
(1)上好第一节实验课
我们常说“上好第一节课”,那么第一节实验节的重要性也不言而喻。这节课对培养学生的学习兴趣、增强学生的学习信心、锻炼学生的自主学习等多方面影响很大。
第一次实验项目是—熟悉Turbo C的运行环境,主要是掌握一些在TC中的一些键盘操作方式。一般是教师给学生提供程序代码(三个),但我们在学生不知情的情况下,给学生两个有语法错误的和一个正确的程序。这样,当学生运行正确的程序时,知道计算机可以帮我们处理问题,原来程序就是这样写的;当学生运行错误的程序,首先他会诧异(老师给的程序原来是错的),于是要求他们自己修改,尤其是有时一个致命错误导致的10多个errors,被学生修改后,没有了errors或所剩无几,这时学生表现的很兴奋、很有成就感,从而加强了本课程的学习兴趣和信心。
(2)分两阶段进行 实验内容与理论教学内容相互应,在基础准备阶段,这方面教学方法上主要是加强操练。通过各种大小程序、多重训练和一个问题的多种解法来加强语法知识点的掌握和训练,开阔学生编程的思路,掌握编程基础。同时,在这过程中我们严格把关,让学生课后认真准备,每次进实验室时,应有写好的完整代码,上机调试,发现问题同时解决问题,要求认真完成实验内容,并在课后书写实验报告。鼓励学生多写程序,要加强实践环节,首先要从量上有个划分。在实训项目驱动阶段。本阶段实训项目的设计非常重要,原则是既要使学生有切入点能够动手又要使各章的内容之间有联系点。
(三)案例教学法
C语言的教学,教师一般受传统应试教育的影响,狠抓理论考试,忽略了程序设计能力的培养,把授课重点放在程序设计语言的基本语法的讲授和掌握上,所选的编程实例大多用于语法规则的验证和说明,仅从程序设计语言的使用这个单一的角度进行教学,而使得大多数学生在学完本课程后,“吃不透、用不活”,表现为学生在程序调试时,对程序中出现的逻辑错误经常不知所措,在开发较大的应用程序时,不知道如何入手。
采用案例教学法,以程序设计为主线,以编程应用为驱动,通过案例和问题引出教材内容,重点讲解程序设计的思想和方法,穿插讲解相关的语言知识。使教学效果既有深度又有广度,学生实际动手能力大为增强。
以上是我个人结合我院C语言程序设计的教学情况,自己总结了几点看法和一些改革措施,拿出来和大家一起分享,请大家多提宝贵意见。通过这次学习,我将会灵活运用几位教授的教学经验,根据我院的教学对象,调整一些上课方法和措施,望能更好的提高教学质量。