c语言程序设计论文范文

时间:2023-03-21 02:24:05

c语言程序设计论文

c语言程序设计论文范文第1篇

1.1理论教学

对于大多数课程而言,从宏观上将课程知识点及其关联讲授给学生非常必要,这便于学生更加系统深刻地理解所学内容。作为教材讲解C语言程序设计的知识点结构。知识点之间的关联可以层层细化,教师首先从宏观上给学生介绍C语言程序的整体组成结构。教师对涉及的知识点进行归类,共包含预处理命令、数据类型、运算符、语句和函数等5部分,从宏观上梳理C语言与程序设计课程的知识点是非常必要和重要的,这样可以避免学生“只见树木,不见森林”,最后只学到一堆零散的知识点,只有从宏观上把握各个知识点在知识体系中的位置和作用,才能学得深、记得牢。对于程序语言课程,如果仅仅介绍语法的运用,学生往往对知识点理解不深刻。我们在教学实践中的体会是:在讲解C语言语法的基础上,适当地剖析编程语言在计算机中的运行机制,会让学生的理解更加透彻。因此,我们的课堂教学方法分为如下两部分。

1)课件讲解。课件讲解包括两部分,即知识点要点总结和知识点运行机制剖析。知识点要点总结就是告诉学生该知识点如何使用;而知识点运行机制剖析则告诉学生该程序在计算机内存中的执行过程。由于绝大部分高校在开设C语言程序设计之前都会开设计算机文化基础等课程,因此学生有足够的计算机基础知识来理解C语言程序的运行机制。

2)实例演示。作为一门编程语言,C语言需要在实践中理解和掌握,因此,课堂教学中,在具体的编程环境(如VC++6.0)下演示十分必要。通过在具体的软件环境下编程,告诉学生应该做什么和不应该做什么,并总结该知识点的注意事项。相比传统的脱离编程环境,只在PPT或黑板上进行板书的教学模式,该方法的教学效果要好得多。在课堂教学中,具体的教学步骤如下:①使用PPT或者板书列出该知识点的注意要点;②在编程环境(如VC++6.0)下演示该知识点的用法,给出正确的和错误的使用方法,并进行对比;③通过幻灯片动画或Flas等形式演示程序在计算机内存中的执行过程,让学生更加深刻地理解程序的运行机制。

3)教学难点与重点——“复合知识点”。从C语言的教学内容来讲,数组、函数和指针是教学的重点章节,这些章节之间相互关联的部分又是重点中的难点,如数组和函数结合,数组名做函数参数,数组和指针结合,指向数组的指针变量,函数和指针结合,指向函数的指针变量等。在教学过程中要反复强调各个知识点的注意事项,如果基本知识点能够理解透彻,上述难点内容也就迎刃而解了。

1.2上机实践教学

在实践教学中,教师可以通过实际教学案例循序渐进地强化学生对C语言知识点的理解。上机实践的教学内容通常分为两部分:基本知识点练习和综合训练。首先通过基本知识点的练习,让学生掌握该知识点的使用,即巩固课堂所学内容;然后通过一个综合性的大作业,训练学生综合应用C语言知识点的能力,例如,通过编写“学生课程成绩统计系统”考查学生对数组、结构体、指针、函数、文件等知识的综合掌握情况。对于初学编程语言的学生,往往没有养成良好的编程习惯,出错的可能性较大,而出错之后进行调试又将耗费较长的时间,这势必对学生的学习热情产生负面影响。因此,一开始就给学生制定科学的编程步骤和规范,使学生养成良好的编程习惯,将大大减少程序出错的可能。下面是按照上述五步编写的一个完整的C语言程序,用来比较两个整数的大小。按照上述五步进行编程,经过一段时间的训练之后,学生出现语法错误的可能性大大降低,此时学生更多的精力将集中在程序算法的设计和实现上。

1.3考试形式

对于C语言程序设计的考核方式,我们采用知识点考核和编程实践相结合的方式。知识点考核偏重于C语言基本语法,用于检验学生对知识点的掌握是否全面,此项考核约占总成绩的40%;编程实践考核用于检验学生的实际动手能力,学生将在规定的时间内根据题目在机器上编程,此项考核约占总成绩的60%。为了实现知识点的考核,我们将考试与计算机二级C语言上机考试紧密结合,采用题库平台进行上机考试,学生直接在机器上答题并提交,知识点考核多采取客观题,如填空题、程序修改题以及读程序题等,编程题在实战编程中考核。C语言程序设计课程的重要特点就是实践性强,学习该课程的目的就是为了编写程序。因此从考试的角度讲,进行编程实践是最合适的方式,通过上机编程来考核学生的学习情况也是最公正和客观的方式。

2C语言程序设计教学实践结果分析

中国矿业大学(北京)每年都有40多个班级同时开设C语言程序设计课程,因此该课程教学质量的高低将直接影响全校理工科学生对C语言的理解和掌握。中国矿业大学(北京)C语言程序设计教学团队经过长期的探索总结出一套行之有效的C语言教学方法,我们将上述方法在学校越崎实验班中进行了试点。如图2所示,采用上述教学法的越崎实验班的C语言程序设计课程考试成绩要明显好于其他班级,其中90分以上的学生占10.7%,80分以上的学生占总人数的53.6%。另外,学生的学习积极性比采用上述方法前得到明显提高,很多学生都对计算机编程产生了浓厚兴趣,实践证明我们提出的上述方法是行之有效的。

3结语

C语言程序设计教学团队在长期的教学实践中探索出的这套教学方法被证明是行之有效的,它能够极大地提高学生的学习兴趣,不但让学生学得会、记得牢,而且能够举一反三,把该方法应用到其他编程语言的学习中。长期的教学实践使我们深刻地认识到,教学方法的好坏对提高教学质量有直接和重要的影响。我们团队提出的这套教学方法是对C语言程序设计教学方法的初步尝试,希望能够对高等院校C语言程序设计教学方法的研究起到抛砖引玉的作用。

c语言程序设计论文范文第2篇

西安理工大学工科非计算机专业和计算机专业虽然都开设C语言程序设计课程,但是前者具有鲜明的专业特点,对该课程的要求明显不同,仅仅按照“面向对象教学”的原则,适当调整教学组织活动和教学内容对于后者是远远不够的。针对目前工科非计算机专业C语言程序设计课程教学实践中所暴露的主要问题,笔者积极开展了非计算机专业C语言程序设计课程教学设计的教改工作。

1.1教学设计概述

所谓教学设计,就是为了达到一定的教学目的,对教什么(课程、教学内容等)和怎么教(组织、方法、媒体的使用等)进行设计。教学设计不等同于传统的备课写教案。教学设计有利于教学工作的科学化,使教学活动纳入科学的轨道。教学设计的意义就在于追求教学效果的最优化,不仅关心教师如何教,更关心学生如何学,注重将人类对教与学的研究结果和理论综合应用于教学实践。教学设计主要包括确定教学目标、组织教学内容、分析教学对象、选择教学形式和方法及教学媒体、设计教学过程、教学质量评价设计等基本环节,其中,设计教学过程是课程教学设计的核心。

1.2该课程教学设计的内容

西安理工大学C语言程序设计课程组于2003年出版了《C语言程序设计教程》及配套的《C语言程序设计教程上机实验与学习指导》特色教材。自2011年开始,非计算机专业选用的教材与计算机专业不同。目前非计算机专业选用《C语言程序设计》(第1版,张毅坤教授,高等教育出版社,2011)作为该课程的教材。非计算机专业C语言程序设计的教学设计是一项复杂的系统工程,主要包括课程教学设计、章节教学设计、课堂教学设计和实验教学设计,以西安理工大学C语言程序设计课程教学大纲为指导,以《C语言程序设计》(第1版)及其配套教材为基础,确定课程教学设计的内容:①将该课程的教学目标确定为“掌握C语言的基本语法和语义,理解结构化程序设计的思想和方法,提高学生的编程能力和调试程序的能力”。②组织教学内容的关键是进行教材的组织呈现,理论教学内容包括《C语言程序设计》(第1版)的第一章至第八章,实验教学体现于该教材的第九章及配套教材。③学生作为教学对象始终是教学过程中的重要角色,工科非计算机专业的种类多,分析教学对象就是掌握学生特点与了解专业背景并重。④重点突出课堂教学设计,传统教学与案例教学有机结合,“讲解+多媒体演示+课堂板书”缺一不可。⑤设计教学过程与“组织教学内容”联系最为紧密,主要包括课堂教学设计和实验教学设计,教学过程设计遵循的总原则是:激发学生兴趣,注重能力培养,合理安排教学顺序,讲清重点与化解难点紧密结合,课堂提高与课后巩固拓展有机统一,并预测教学实践中可能出现的意外情况。⑥将学生评价、同行评价、教学督导组专家评价、主管教学的领导评价和教师自我评价这几种评价的结果综合起来,比较客观的评价教学效果与教学质量。

2教学设计的实践及效果

我们连续多年承担非计算机专业C语言程序设计课程,先后承担过西安理工大学电气工程及其自动化(电力)、水文与水资源工程、印刷工程、包装工程和材料科学与工程等专业的C语言程序设计的理论教学和实验教学任务。始终将上述教学设计的内容贯穿于课堂教学和实验教学之中。C语言程序设计本身是一门实践性很强的课程,加之各个理工科专业的特色鲜明,所以结合学生所学专业特点与需求,同一门课程,针对不同专业的学生,适当调整教学设计内容,并在教学实践中检验教学效果。2012年以来,学生对笔者的教学评分一直在95分以上,也给予了肯定性的评价,例如“采用启发式教学,阐述问题深入浅出,重点突出,能理论联系实际或联系学科发展的新成果”;“对于您的授课方式我们很满意,感谢您对这门课程的热忱,我们会努力学下去”;等等。

3结语

面对非计算机专业C语言程序设计教学中暴露出的带有普遍性的问题,教学设计是改善该课程教学效果、提高其教学质量的主要途径。通过开展教学设计工作,并将其成果应用于教学实践中,提高了学生学习的主动性,增加了其学习兴趣,实现了学生对所学知识的理解、编程思想的确立和实践动手能力的提高。教学效果有了比较明显的改善。

c语言程序设计论文范文第3篇

关键词:C语言;学生成绩管理系统;程序设计

中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2017)04-0059-04

1 背景

如今各大高校均需要一个完整的系统来管理和保存学生的各门课成绩信息,以便后期使用,论文以河海大学文天学院的工科专业学生成绩为例,运用C语言程序设计和程序运行的环境,设计了一个简单的学生成绩管理系统,下面就来介绍该系统是如何构建的。

2 系统需求分析

2.1 系统功能划分

该系统主要功能如下:

1)学生基本信息和成绩的录入;

2)学生成绩的管理,如计算总分、排序、统计等功能。

2.2 系统功能结构设计

这个学生成绩管理系统中包含的学生信息有:学生的学号、姓名、性别、高数成绩、英语成绩、计算机成绩、三门功课总分,主要的功能模块如下:

1)输出学生基本信息并算出总分;

2)按照学号进行排序;

3)按照总分进行排序;

4)统计各门课程平均分;

5)统计男女学生人数;

6)按照姓名进行排序;

7)统计高数成绩优秀(大于等于80分)的人数,并输出符合条件的记录;

8)统计每门功课成绩都在80分以上,或总分在240分以上的人数,并输出符合条件的记录。

C语言中系统的每个功能由一个函数来实现,其系统功能模块层次结构图如下:

图1 学生成绩管理系统功能模块层次结构图

因为函数就是功能,所以对于图1的功能模块层次结构图,每个模块就对应C语言中的一个函数,该系统中所涉及的函导捌涔δ苋缦拢

1)int Menu();

主控菜单函数,有返回值,无参数。用菜单形式显示该系统能实现的所有功能,以供用户查看和使用。函数中的返回值为用户输入的序号code,为局部整型变量。

2)void Read(struct student stud[],int *n);

读入数据函数,无返回值,有参数。形式参数stud为结构体数组,由于调用此函数时实际参数为数组名,因此此处用数组接收;形式参数n为指针变量,由于实际参数为存放学生人数的整型变量的地址,因此n指向存放学生人数的整型变量,这样可以在读入学生信息的同时,还可以统计出学生的人数。

3)void Print(struct student *pstud,int n);

输出数据函数,无返回值,有参数。形式参数pstud为指针变量,指向存放学生信息的结构体数组,这样可以将相关变动信息返回给主调函数;形式参数n为整型变量,存放学生的人数。

4)void total_order(struct student *pstud,int n);

按总分排序函数,无返回值,有参数。形式参数同上。

5)void num_order(struct student *pstud,int n);

按学号排序函数,无返回值,有参数。形式参数同上。

6)void ave_count(struct student *pstud, int n);

统计各门课平均分函数,无返回值,有参数。形式参数同上。

7)void nn_count(struct student *pstud,int n);

统计男女学生人数函数,无返回值,有参数。形式参数同上。

8)void name_order(struct student *pstud,int n);

按姓名排序函数,无返回值,有参数。形式参数同上。

9)void gxyx(struct student *pstud,int n);

统计高数成绩优秀人数函数,无返回值,有参数。形式参数同上。

10)void mm(struct student *pstud,int n);

统计每门课分数不小于80分或总分在240分以上人数函数 ,无返回值,有参数。形式参数同上。

3 C语言程序设计

一个C语言源程序由若干个函数构成,且有且仅有一个主函数,主函数的名字只能是main,其他函数名字由用户自己定义,只要满足标识符的四大规则即可。一个程序总是从主函数开始执行,无论主函数在前还是在后,该系统中除了主函数外,还有十个函数,下面针对其中几个重要的函数进行程序设计。

3.1 主函数程序设计

为了方便读者更好地读懂该程序,部分地方加了注释,以上程序中/* */为注释,计算机并不执行。其中第四行的N为符号常量,表示该系统记录了10个学生信息,每个学生信息用结构体类型的数组来保存,该结构体类型包含4个子成员,每个成员又是另一种类型的数据,其中学号、姓名、性别均由字符数组存储,成绩由整型数组存储,这样就构成了struct student结构体类型,主函数中的第一条语句就是用这种类型定义了结构体数组stud,用来存放十个学生信息。接下来就在主函数中调用各个函数,实现相对应的功能。

3.2 用户自定义函数程序设计

3.2.1 主控菜单函数的设计

在屏幕中显示主控菜单,scanf为输入函数,需要输入一个整数,通过输入相对应的数字序号,可以实现相应的功能,例如输入1,即显示学生全部信息。

3.2.2 读入数据函数的设计

该系统是从文件中读取数据,10名学生的信息存储在文本文件studfile.txt中,如果想修改学生信息,直接在文件中修改即可,不用修改程序,这样既方便又快速,大大节省了时间。

3.2.3 按姓名排序函数的设计

以上程序使用冒泡的排序方法按姓名从小到大排序,系统直接将排序的结果输出到屏幕中,以供用户查看和使用。

4 系统界面

将以上程序输入到计算机C语言开发环境Microsoft Visual C++6.0中,经过编辑、编译、连接以后就可以运行了,运行界面如下:

1)系统菜单界面

当按下回车键,系统进入菜单模式,按照序号选择需要显示的信息。

2)@示学生信息界面

当按下序号1,系统进入显示全体学生信息界面,显示的同时计算出了3门课总分。

3)按学号排序界面

按下回车键继续进入菜单进行选择,当按下序号3,系统进入按学号从小到大排序的界面。

4)统计高数优秀的学生人数和记录

按下回车键继续进入菜单进行选择,当按下序号7,系统进入统计高数不低于80分的人数和记录。

5 结束语

论文主要介绍了学生成绩管理系统的设计与实现过程,分别从系统需求分析、系统程序设计和系统界面设计三个方面展示了系统的设计与实现,其中系统需求分析包括大体功能划分和具体功能结构设计,并设计了功能结构图,描述了各项功能,系统程序设计包括主函数和其他自定义函数的设计。该系统总共实现了八项功能,学生信息来源于文本文件,这样大大方便了学生信息的增删改查等功能。系统中所有功能使用到的方法,还可以实现更多的功能,拓展性能良好,便于各高校各专业使用。

参考文献:

[1] 胡枫. 《C语言程序设计》的案例式教学的设计[J]. 青海师范大学学报, 2010(4).

[2] 谭浩强. C程序设计[M]. 4版.北京: 清华大学出版社, 2010.

[3] 宫业芹. C语言程序设计网上教学系统的设计与实现[D]. 济南: 山东大学, 2012.

[4] 陈婷. C语言程序设计实验教学改革探究[J].实验技术与管理, 2010(10): 182-184.

c语言程序设计论文范文第4篇

关键词:计算机教学;汇编语言;实验;改革创新

中图分类号:G642 文献标识码:B

文章编号:1672-5913(2007)18-0129-03

1 “汇编语言程序设计”课程存在的必要性

高职教育的目标在于培养具有组织、管理高新技术的生产,能够操作、调试和维护高新技术设备,解决生产过程中遇到的各种实际问题的高素质技能型人才,与普通本科教育有着本质的区别。眼下许多高职院校的计算机专业已经进行了各种教学改革。这些方法和措施所强调的大都是:以提高学生实践能力为主,理论够用就行,应用型不强的科目该砍就砍。所以,在许多高职院校的教学改革中,“汇编语言程序设计”被大刀阔斧地砍掉了,或者合并到“微机原理”、“计算机组成”等其他课程中。但是,尽管与发展初期相比,计算机开发和应用技术已经有了根本性的变化,我们有了各种高级语言、有了网络应用开发的许多编程工具,很多程序甚至可以自动生成,那么汇编语言是不是就真的应该退出历史舞台呢?笔者不这样认为。

汇编语言是计算机专业及相关学科一门重要的基础课程,是培养学生直接使用计算机硬件资源能力的一门课程。它不仅能帮助学生进一步理解计算机组成原理课程中的各种概念,而且还为其它课程如:操作系统、接口与通信技术和计算机控制技术等课程提供必要的预备知识。该课程在计算机学科课程设置中起着承上启下的作用。不能了解和熟悉汇编语言知识不仅将导致学生知识结构的不完整,也可能导致学生认知水平降低、开发手段贫乏。在一些应用中,汇编语言甚至是开发工具的唯一选择。

当前嵌入式系统软件的开发非常热门,其发展前景很广阔,嵌入式系统较常用的操作系统Windows CE与Windows同样是基于Win32 API的,Win32汇编语言的学习有利于开展后续课程“嵌人式系统”,为嵌人式系统的软硬件开发打下了坚实的基础。

总之,无论对于计算软件还是硬件工作者来说,汇编语言都是十分重要的基本工具。因此,高职教育中计算机及其相关专业开设“汇编语言程序设计”课程是非常必要的。

2课程改革势在必行

目前许多高职院校尤其是计算机专业的教学模式,大多是本科计算机专业的“压缩版”,在制定教学计划和大纲时,以名校相应专业的教学大纲作为自己的大纲,以名校选用的教材作为自己开展教学的教材,就如“汇编语言程序设计”这门课的教材,很多学校仍然采用清华大学出版社出版的《IBM-PC汇编语言程序设计》。这种教学模式尽管有其先进和优秀之处,但并不适合高职教育。而另一方面,汇编语言本身固有的复杂性,使学生理解起来比较困难。这体现在以下几个方面:

1) 由于汇编语言与硬件联系紧密,学生一般是在还没有学习过相关硬件课程的情况下就开始学习汇编语言的,因此初学时不易理解,容易造成厌学情绪。

2) 汇编语言的内容丰富,需要记忆的内容很多,学生在学习一段时间后容易遗忘,从而造成跟不上课程的进度而放弃的现象。

3) 由于学习高级语言后产生的思维模式,使得学生在编制汇编语言程序时易出现一些语法或逻辑上的错误。

4) 在学习汇编语言的过程中,由于课程的特点,学生不能够及时上机实现,造成学生感到课程抽象,很难理解,甚至觉得所学的知识无用,从而产生厌学情绪。

以上归纳的几点,是我们在教学实践中经常遇到的现象,要解决这些问题除了要改革教学方法以外,还要从学科特点和学生的实际出发,改革课程设置,完善课程的前后衔接,合理安排课程开设的次序等。因此,如何改革汇编语言课程以提高其教学效果和教学质量,使它跟上计算机技术的发展,是我们当前亟待解决的问题,而不是简单地取消这门课。

为了使学生系统而全面地掌握汇编语言的编程方法,把握本课程的重点,消化难点,我们用实验的方法对“汇编语言程序设计”这门课程的教学方法进行了改革,取得了一定的成绩。

3行之有效的改革尝试

在认清汇编语言的重要作用和明确其教学改革的紧迫性后,我们制定了改进的教学大纲,并据此编写了相应的实验教材讲义,开始了“升级”汇编语言教学的改革尝试。

3.1教学手段的改革

“汇编语言程序设计”课程一向都有上机实验的教学要求,但教学主体是课堂教学,无论是实验设计还是实验强度都带有强烈的“验证性”色彩。而高职院校的培养对象区别于普通高等学校学生的鲜明特点是:思想活跃、智商与情商皆高、活动能力强,但普遍存在的问题主要是学习自觉性不高、单纯凭兴趣学习的观点重、刻苦精神差等。因此,如果上课基本不听,则验证性实验的基础就不存在,实际教学效果也可想而知。所以对于这样的学生群体单凭课堂教学和一般作业,要真正领会汇编语言程序设计课程所介绍的概念、原理、方法和技巧等,是很困难的。经验表明,学习并真正体会和掌握汇编语言程序设计的最好方式是对它进行充分的实践。把实验作为学习汇编语言程序设计的主导方法,为学生提供了一个掌握汇编语言程序设计全新的学习方法,可以由此来体验汇编语言程序设计的知识及其应用技巧。当然,通过实验,也一定能够很好地提高学生汇编语言程序设计能力。

区别于传统实验,我们的理想是,用实验、实践的方法来改革理论教学方法。所以我们把课堂搬到了实验室,所有的课程都在实验室完成,让学生在实践中激发对相关理论的兴趣,再用提高了的理论水平来指导新的实验和实践活动。而我们在教学中采用“先做后说”的方法,把根据学科理论知识精心设计的实验实践环节与学科理论教学相融合,解决学生的认知困难,取得了很好的教学效果。

3.2教学内容的改革

我们在取舍教学内容时,体现了“浅、广、新”的特点。其中,“浅”体现在重点介绍基本概念、原理和方法,而没有过多地详述深入和细节内容;“广”体现在比较全面地介绍了指令系统和汇编语言所涉及的内容,形成比较完整的知识体系;而“新”更是我们教学改革的重点,介绍了简化段定义程序格式、32位指令及编程、混合编程等。根据当前国内教学实际,我们仍然以16位8086CPU指令系统和基本汇编语言知识和程序结构作为基本的、重点的内容;而将新增内容作为独立章节引出。采用微软的最新版本汇编程序MASM 6.11,但主体内容仍然适合MASM 5.0版本。教学内容中,舍弃了一些过时的应用技术,而引入了一些实用的汇编语言程序设计方法,例如开发大型程序需要的模块化方法、与C/C++语言的混合编程技术(尤其是汇编语言与Visual C++ 5.0/6.0的混合编程,非常受学生的欢迎)、新增的高级语言特性伪指令等。

新编的实验教材包括7个方面共20个实验。全部实验结合目前广泛使用的PC机Intel 80x86 CPU来开展教学,目的是通过一系列使用80x86和Windows环境下32位汇编语言的实验练习,把汇编语言程序设计的概念和理论知识融入到实践当中,从而加深对汇编语言程序设计的认识和理解。实验练习几乎覆盖了汇编语言程序设计教学的各个方面,内容涉及汇编语言编程基础、构建汇编语言编程环境、汇编语言程序设计、输入输出与中断、Win32汇编语言程序设计及汇编语言与C/C++的混合编程等。

3.3考核方法的改革

为了保证教学效果,必须进行考核。传统的汇编语言教学的考核方法多为笔试,再参考平时上机的表现,这种考核方法不能体现学生的真实水平。改革后的考核手段多样化,由平时作业、实验、论文、课程设计、阶段性练习和期中、期末考试等多种环节组成,新编的实验教材每个实验后面都有学生自测和教师评价栏目,并且得到了切实认真地执行,这样极大地改变了读书为了考试,只有考试前才读书,甚至连考试前都不读书的状况。

4实验教学中应重视教材建设

教育的一个重要原则是“因材施教”,高职教育对人才的培养,应该体现到教材建设上。教材建设不仅要做好减法――适当地降低理论要求,也要做好加法――增加探究性实验并在实践环节中有突破性的创新。要根据学生求知欲望强的特点重视扩大学生的知识面,要利用学生动手能力强的特点来提高学生的实践能力、创新能力和就业竞争能力,努力形成一个“什么都学过什么都会点”的积极局面。

教学内容要有可操作性、趣味性和适当难度。可操作性保证学生都能完成作业、实验、设计而促进学生学习信心的建立,在一定程度上减少学生抄袭的理由,克服作业、实验、论文普遍抄袭的弊病;趣味性体现“寓教于乐”以提高学生完成作业、实验、论文的积极性;适当难度有助于激发优秀学生进一步钻研的斗志。

实践证明,“汇编语言程序设计”课程的实验教学改革,取得了明显的效果,也受到了学生的普遍欢迎,通过教学改革,学生提高了学习兴趣,由被动学习变为主动学习,为后续课程的学习打下了坚实的基础。

笔者在“汇编语言程序设计”课程实验教学中所做的改革尝试,目的是为了“抛砖引玉”,试图引起更多的老师产生共鸣而繁荣计算机实验教学。

参考文献

[1] 周苏,金海溶. 汇编语言程序设计实验教程[M]. 北京:科学出版社.

[2] 李立冬,朱晓鸥. 微机原理与汇编语言基础[M]. 北京:高等教育出版社.

[3] 沈美明,温冬婵. IBM-PC汇编语言程序设计[M]. 北京:清华大学出版社.

c语言程序设计论文范文第5篇

关键词:S-P;C语言程序设计;课程改革

中图分类号:TP393 文献标识码:A 文章编号:1009-3044(2016)27-0183-02

目前,高职教学中的考试还是延续了采用试卷化来考察学生的成绩,将成绩的好坏作为衡量学生学习结果的标准。为了更好的进行教学评价方式的改革,适应在新时期教育发展趋势对考试评价提出的要求,就需要引入一些科学化,系统化的评价方式来进行有关课程的评定。S-P表是一种采用形成性评价理念为基础,使用图形化的数据表现形式和强大的数据处理能力的评价法,被广泛地应用在各种类型的测验评价中。本文主要以《C语言程序设计》课程为研究对象,运用S-P表分析法的相关参数计算结果的同时结合理论研究方法,将试卷的测验作为切入点,对《C语言程序设计课程》相应教学内容的教学情况进行分析研究。

1 《C语言程序设计课程》中存在的问题

近年来,高职院校对于C语言程序设计的课程实践教学非常重视,加大了对基础学科的投入,从教材的编写,师资的培养到参加各种类型的竞赛相比有很大的改善,但仍然存在很多的不足,主要表现在以下几个方面

(1)课程学习目标不明确。

在高职的《C语言程序设计课程》教学过程中,发现学生对于课程的认识非常浅,仅仅认为该课程是其他程序设计类课程的基础,具体会对高职的计算机专业的学习有多大的帮助完全不理解,因此导致学生在学习的过程中不够重视。

(2)理论教学过程忽略培养学生的综合能力

在传统的理论教学过程中,都是采用章节式的教学形式,引导学生从循序渐进按照章节来进行学习,在每一章学习的过程中,采用判断题,程序填空题,编程题的方式来进行对理论过程的消化,因此这种效果看上去可以起到对知识点有益的补充,但是缺乏从整体结构上进行把握,忽视了对综合应用能力的考察。

(3)实践教学开展的效果不佳。

目前,高职院校的程序设计主要是教学理论的讲解和上机的实践过程,实践环节的地位始终都是摆在理论教学环节之后,主要是用来对理论教学加强实践过程中的一种表现,因此课程的安排初期,无论是从实践学时的分配、以及实践课程的开展次序来看都明显的弱于理论教学。因此在教学过程中学生对实践过程的教学不够充分重视,造成了在考核过程中有些学生的理论很强,但实践上机调试偏弱,在一定程度上严重违背了程序设计课程的学习宗旨。

(4)课程评价机制落后,严重束缚学生的创新能力。

课程评价一般分为理论评价和实践评价两种方式,理论评价多以选择题,判断题,程序填空题等方式出现,考察学生对于程序的理论知识点的掌握情况,这种方式无法从根本上考察C程序设计的运用,在上机过程中的考核方式由于学生的人数和时间的关系,无法做到对每一个学生进行考察,即使在考查过程中,也往往是依靠程序的正确结果来进行给分,而对于一些错误答案的程序往往不够重视,在这其中可能会导致有些错误的程序往往包含了一些学生的新的思想和想法,这样会严重打击学生的积极性,使得学生放弃自己的想法复制一份结果正确的标准格式代码进行提交,不利于提高对学生创新能力的培养,降低了他们对于学习的热情。

2运用S-P方法分析《C语言程序设计》课程

2.1 S-P分析法简述

S-P 分析法是一种非常好的试卷评价方法,它主要考察学生的学习情况、辅导内容和考试方式为主旨,将考察学生的方式采用图形化的方式进行表达,是一种理论结合实践的验认知诊断评量技术。

2.2课程数据导入

本文将各试卷的知识点对应的成绩作为研究的对象,对原始的成绩进行合并转换,画出相应的 S 曲线和 P 曲线,并采用 S-P 方法进行评价分析。本步骤中所做的工作主要分为两个阶段:

(1)学生成绩的准备。首先,对三份试卷的原始成绩进行收集和整理,将收集好的试卷中的原始题目和成绩进行合并,得到全新的考试成绩表。表中的每个成绩数值对应题目的知识点都不尽相同,为后续的转换组好准备。

(2)将新的学生成绩考试表转换成学生原始得分布尔矩阵。为了更好的进行研究,本文采用的问题平均的得分值作为赋值的标准,所以试卷中题目都需要进行布尔转换,在新学生成绩考核表中分数的转换均需严格按照赋值标准进行判断和转换。

2.3 S-P分析课程课程因素

(1)试卷信任度

本文选取了近三年的三次《C语言程序设计》的期末测试,本次测验根据经典测量理论,即采用分半法来计算相关系数的方法来计算信任度系数值。

计算过程如下:

步骤1:计算出整个测验中每个学生在试卷中的奇数题目的总得分()和偶数题目的总得分()。

步骤2:用下列公式求出奇数题和偶数题这两组分数的相关系数:

步骤3:用如下斯皮而曼-布朗公式进行校正:

依据经典测试理论,本文对三份《C 语言程序设计》课程试卷计算各自的信任度系数值,来进行客观的分析这些试卷的测试结果是否具备真实性。计算的过程是首先对所有参加测试学生的试卷按照题目的奇偶编号进行统计,累计统计每份考卷中的奇数题目的得分,以及偶数题目的得分 ,将这些值导入到 Excel 的环境中对所有的奇数题目总分和及偶数题目总分和以及的值、的值和的值,并分别求得这些值各自的总和,最后将这些结果都代入公式(1) 和公式(2)中即可求得最后的信度系数值。

(2)试卷效度

根据经典测试理论有关效度的分析方法。本研究结合近三年来的三次《C语言程序设计》课程考试答题情况和标准答案的分析得到了三次考试本身的效度情况,其次,对三份试卷的所考察的知识点进行计算和统计,并根据考试教学大纲中的要求进行对比,发现试卷考察的知识基本覆盖所规定的教学知识点。

(3)差异系数

将三份试卷的数据导入S-P表中,按照差异系数公式(3)来计算差异值。

式中:表示差异量,表示正确回答率。

一般来说,考试类型的不同导致的差异系数的值也会不同,一般对应检测学生成果的考试取值在0.5左右,而本次使用的试卷符合这个测试类型。 三次试卷的测试差异系数值为表1所示:

3使用S-P分析《C语言程序设计课程》反馈

(1)学生学习状况方面

统计计算三个班级中参加期末考试的学生的原始分、平均分、差异量三个考试班级中学生的得分率和学生成绩差异情况,对三个班级的学生学习状况按照这些指标进行分类。这种分类是动态的,由多种统计数据划分,将学生的个体与全班的表现对比,可以多角度的了解学生状态,以便他们在考试中发挥出现异常都能帮助授课教师继续分析和追踪。

(2)试卷整体质量方面

本课题中使用的《C语言程序设计》的试卷质量不尽相同,每份试卷的信度和效度都不同,特别是在效度方面,三份试卷的效度都比较高,其次,三份试卷的难度情况和分值情况不同,特别是在2013年的试卷中,P曲线存在明显的断层,这说明该年的试卷在出题方面存在一定的问题。

(3)教学环节和因素分析方面

通过S-P分析得到,任课教师仅仅关注教学知识点是不够的,分析中发现学生和教师对于存在的知识点的学习感受和教学效果是反应到一些具体的教学环节和因素上的,例如学生对于课程的学习兴趣,分析程序的思维能力,教学过程中的多媒体的手段以及课程内容的安排等等,这就要求教师在课程的日常教学实践中能够从教学环节和饮食上进行分析和改进,提示教学知识点的教学效果,这样不仅可以帮助教室解决教学过程中的问题,还可以根据学生的具体情况设计更适合学生的教学方法。

(4)学生能力方面的挖掘分析

使用S-P分析方法对课程的诸多因素进行了分析,课程的评价也是学生的学习能力和学习兴趣的反应,因此使得授课教师加强学生对《C语言程序设计》中语法细节掌握情况的反馈,以及学生具备的基础能力情况,进一步挖掘和培养学生的学习能力。

4贡献及总结

本文以 2012,2013和2014三个年度的《C 语言程序设计》课程作为研究对象,通过使用S-P参数公式得到相关的反馈信息,针对参与考试的学生的学习情况、试卷质量和相应的教学知识点的相关情况进行了分析和研究,得到了如下的内容:

(1)对《C 语言程序设计》课程大纲下的三个年度的学生考试成绩进行汇总,并对学生的考试情况、试卷质量和教学知识点覆盖等情况进行了统计分析;

(2)通过S-P分析法得到试卷中的部分的异常试题和需要重视的知识点多注意的教学知识点,分析和总结出这些引起共性的知识点的教学效果教学环节和因素,并反馈给了任课教师,以便能够更好的提醒和帮助老师进行课程上的改革,以便取得更好的教学效果;

(3)将S-P分析过的部分班级的学生学习《C 语言程序设计》课程中的状况及时反馈给教师,并能够在今后的教学过程中能够注意学生的学习状况并加以指导;

(4)不断完善S-P表的评价分析理论,并需要结合教育学中经典教育测量理论中的有关信度、效度值的指标计算分析内容,可以弥补自身的不足,并能够与课程的其他方法进行补充,不断完善提高。

5综述所述

需要不断在《C语言程序设计》课程中进行改革,本文的S-P评价方法还存在一定的不足,需要在今后的教学过程中不断改进S-P评价方法,使之能够为计算机课程的改革教学提供有利的支持。

参考文献:

[1] 冯丽娜.S-P表分析法的教学应用研究-以《C语言程序设计》课程测试为例[D].内蒙古师范大学硕士论文,2013.

[2] 万岩.S-P表在教学评价中的应用及其计算机实现[D].华中师范大学硕士学位论文,2008.

[3] 许志勇,丁树良.S-P表法的改进和应用[J].江西师范大学学报(自然科学版),2011(9).

c语言程序设计论文范文第6篇

关键词: C语言程序设计;教学改革;考核方法;

中图法分类号: TP3 文献标识码: A

C Programming Language" reform of teaching and practice of assessment methods

TIAN Xin-li1,Liao Wei2

(1. The Engineering&technical College of Chengdu University of Technology, Leshan,Sichuan, China)

Abstract: C computer language is our core professional a professional foundation courses, but also most of the major elective non-computer professional. This article describes the design of the C language program for some of the teaching reform and examinations. One for the C language teaching methods, teaching conditions and the assessment methods proposed some effective methods for peer learning and discussion.

Key words: C language programming design; Teaching reform; The assessment methods;

0 引言

现在计算机应用技术涉及各行各业,高等教育对计算机的教育进行了普及,成为了高校公共基础课程,其中《C语言程序设计》成为理工科学生必修的一门计算机课程,并以达到C语言二级水平为最基本要求,《C语言程序设计》教学是高等教育的计算机技能培养的重要环节。因而教好、学好该门课程的具有非常重要的社会意义,迫切需要不断研讨出更好更有效的教学和考核方式,为社会的对计算机编程技能的需求。现将我在学院“《C语言程序设计》教学及考核方法改革实践”教改项目建设中,对该课程教学和考核方面的改革与取得的教学效果与大家进行探讨。

1. 研究目的和意义

《C语言程序设计》是高校计算机专业的一门核心专业基础课程,同时也是多数非计算机专业的主要选修课。该课程是一门实践性与应用性较强的课程,目的是培养学生算法设计的基本思想和程序设计的基本技能。课程的内容主要涉及C语言的基本概念、基本语法以及C语言程序设计的基本方法,在教学中既要重视严谨的系统理论教学,又要重视考试题型的训练环节,强化学生计算机等级考试应试技能。本项目针对我院《C语言程序设计》的教学考核和等级考试考前训练研发考试平台,该考试系统采用历届等级考试真题做为主要题库,灵活有效的考核教学效果,评测教学质量并督促教学方法的不断提高,达到提高等级考试过级率的目的。

2. 立项依据、国内外研究现状、存在主要问题分析

《C语言程序设计》课程在独立学院的教学有很多地方还需要进一步研究,才能更适合三本学生的学习要求,因其覆盖面大,参与考试的人数众多,制卷改卷也已经成为一个越来越严重的问题;因此《C语言程序设计》自动组卷和评分的考试系统,越来越成为该门课程教学单元测试和期末考核的急需的手段,在此背景下,我们教研室组织教学骨干对《C语言程序设计》课程的教学与考核方法立项研究,争取实现我院《C语言程序设计》课程考核采用上机考试,使用电脑自动组卷和评分。

国内外在目前已经涌现出了各种各样和《C语言程序设计》考试平台,但是针对我院实际教学的考试系统还需我们自己的授课教师根据我院的教学特色和要求自发研制,考试题库主要来源于四川省历届二级真题,能够服务于教学和计算机等级考试的训练。

目前存在的最大的问题是我们初次自行研发考试系统,经验不足,考虑难免不周,但是我们项目小组一定在系统测试中尽最大努力完善该系统。

另外,我们现有教学条件的最大问题是,理论教学课时严重不足,教学效果不能被充分有效的测评。

3. 本项目的研究内容、主要特色和要解决的关键问题

本项目是对《C语言程序设计》课程教学方法及考试方式方法的研究,主要通过采用多种形式考核,督促学生的知识掌握程度,考试采用综合编程测试(考前一周完成)、上机(理论)和平时考核相结合的考核方法,全面考核学生的动手能力、基础理论和平时学习状况。 上机考试使用电脑自动组卷和评分的考试平台;平时考核主要包括平时作业和实验的完成情况,引导和督促学生平时多编程,编好程。

课程教学与考核方法改革的主要特色表现下面三点。 (1)平时上机训练时给学生留一些编程习题,每次根据学生平时作业和上机实践的情况进行测评并占据期末总成绩30%。 (2)期末前,给学生留一个综合编程题考核学生综合解决问题的能力,要求同学们在考试前一周内完成,占据期末总成绩10%。(3)期末进行理论部分的上机考试,占期末总成绩的60%。

本教改项目要解决的关键问题。(1)保证在学校利用投影仪的多媒体教室授课,有效 提高 授课质量。同时在 C 语言教学中,改革考试方式,强调理论部分考核进行上机考核自动抽卷并判分,题库主要由等级考试真题组成,以适应等级考试过级训练。另外,增加了综合编程能力的测试,并将综合编程情况记入学生考核成绩,引导教师和学生重视程序编写能力的讲授和学习。(2)实现了在线考试系统。学生的考试由笔试全部改为机考。考试系统提供了编辑、考试和练习环境。实现了基于可信度的自动化阅卷和基于FTP的成绩自动上传功能,这对深化C语言程序设计和其他全院性的计算机公共课程教学的改革具有重要意义。(3)推广课题研究型教学模式。提倡精讲多练,以学生在课题研究中探索式地学习为主,以网站答疑讨论为辅,试题库在线测验为补充的教学模式。实行“精讲多练”,教师只作入门性的、重点的、带有启发性的讲授,强调自学能力的培养,指导学生通过自己看书、在网络教学平台上用多媒体课件或其它各种学习资料进行自学。让学生在课题开发的过程中利用在线学习平台学习基础理论和软件开发的思路与方法,其成绩记入综合编程能力测试分数。 (4)实行了“任务驱动”教学模式。调整传统教学内容的先后顺序,在上课前先给每个学生布置“任务”,以“任务驱动”方式引导学生学习。“任务”力求既结合实际,又能涵盖课程教学的要求。教师提出学生自学和开发、研究的进度,设计教学进程,以程序编制牵引理论教学,以项目开发和程序的拓展驱动教学,“任务驱动”教学模式是打破程序设计类课程一贯采用的“语法”教学模式,以“实例”为主线展开,重在分析算法设计、数据组织、编程思路,以培养学生创新能力和研究能力,同时讲授所涉及的知识点。以“实例”为主线展开,重在分析算法设计、数据组织、编程思路,并根据“实例”布置课后作业。根据课后作业完成情况,给学生合理的平时作业成绩。

4. 结束

本项目撰写相关教改论文,并实现《C语言程序设计》的无纸化考试系统,为学院师生提供《C语言程序设计》编辑、考试和练习环境,实现自动化阅卷,对我院计算机二级C的教学和模拟练习提供良好的实验平台。

【参考文献】

[1] 陈朔鹰等. 树立全新教学理念建设C语言程序设计课程. 北京理工大学学报(社会科学版),2007.4

[2] 李凌. 程序设计方法与实践应该怎样上. 计算机教育,2006年8月

c语言程序设计论文范文第7篇

关键词:教学模式,专题探究,C语言,专题网站

【中图分类号】G642.4

1.引言

“C语言程序设计”课程是计算机科学与技术和软件工程学科相关专业的重要基础课程。课程要求学生掌握C语言的基本数据类型和控制语句,灵活运用顺序、选择和循环三种结构设计程序。学生的学习效果直接影响后续相关课程的深入学习。

由于课程特点,使得传统的被动教学方式让学生觉得枯燥、乏味,只有自主的、探索性的学习才能调动学生的积极性,使其更好的学习本课程。网络环境下专题探究式教学模式则符合这一要求 [1,2] 。

2.网络环境下的专题探究式教学模式

专题探究式教学模式是指在网络环境下,以计算机等终端设备做为传播媒介,在教师的指引下,从课程中选择和确定相关的专题,以分组讨论的学习方式,开展研究,并自主获取相应知识、应用相关知识解决实际问题的一种综合性教学模式。

网络环境下的专题探究式教学模式主要由情景架设、问题提出、探索实践、结论确定和巩固评价等多个部分组成[3]。

3.专题学习网站的总体设计

根据教学需求,专题学习网站分为如下四个功能模块:系统管理模块、专题管理模块、教师专题模块、学生专题模块。系统用户分为教师与学生。网站的系统结构如图1所示:

4. 专题的设置

“C语言程序设计”专题探究式教学的指导思想为面向授课学生, 培养全体学生自主学习能力, 注重学生创新能力的培养, 鼓励学生进行探索性的学习。根据教学的基本要求,在专题学习网站中将设置如下专题:基础知识专题、结构程序设计专题、复合数据类型应用专题、模块化结构设计专题、指针专题和文件专题。

6.结束语

本文简单介绍了网络环境下的专题探究式教学模式的特点和基本组成,详细阐述了“C语言程序设计”专题网站的总体设计方案。通过在网站中设置丰富多样的专题,辅以相关学习系统的支撑, 激发了学生学习的自主性,扩展了学生的学习空间, 满足了学生个性话的发展需要。

参考文献

[1]何克抗. 关于网络教学模式与传统教学模式. 中小学信息技术教育网, 2002.6.

[2]谢幼如. 专题学习网站的教学设计. 电化教育研究. 2003.1.

c语言程序设计论文范文第8篇

关键词:C程序设计;C语言;课程;教学

1概述

C语言是当今计算机应用中最重要且被广泛使用的一门程序设计语言,它兼具高级和低级语言的优点,特别适合于编写计算机系统软件。高校的很多计算机专业课程,如数据结构、操作系统、算法设计等,多选用C语言作为教学语言。学生学好C语言,不仅是一门课和一种技能的问题,而且涉及到能否学好整个专业课。因此,C语言程序设计的教学越来越被提高到重要的位置,各校纷纷进行C语言教学方法的改革和试点工作[1-3],并取得了一定的经验和成绩。

笔者所在高校也进行了有益的探索[4]。在部级教学团队“计算机基础系列课程教学团队”共同确立的教改思想和指导原则下,各授课教师根据自己的教学经验,进行了多种教学方法的尝试,取得了良好的成果。其核心思想是,不断加大C语言的实践课时,注重学生编程技巧和编程能力的提高。尽管如此,部分学生仍然不能很好地掌握C程序设计技术。在C语言考试中,学生更易于完成填空、选择、判断正误等检验“基础知识”的题型,程序设计或上机编程题则完成质量较差。直到学习数据结构等课程时,部分学生仍然难以用C语言编写算法,这直接影响到了数据结构等课程的教学效果,对后续课程造成了影响,甚至严重影响了毕业论文的进度和质量。

C语言是一门程序设计语言,它是程序员和计算机相互交流的语言。作为语言学习,它也遵守人学习语言的最一般规律:在实践中学习语言,重视单词的学习和积累,重视语言的交流能力。

2像婴幼儿学习说话一样,学习计算机语言

婴幼儿学习语言的方法对C语言程序设计课程的教学组织具有很大的启示作用。

2.1跟着大人,重复学习说话

婴儿学习说话,是从“mama、baba”开始,爸爸妈妈积极应答,并鼓励孩子继续“说话”。期间没有人在意,孩子是有意识或者是无意识的,孩子的发音是否准确,只要有声音,就给予足够的鼓励。之后,婴儿继续学习其他称呼和各种词汇,会说“开门、妈妈抱”等短句,直到“我要出去”等简单的句子。这一语言学习的过程特征很明显:跟着大人,重复说话,不在乎语法是否正确,能简单表达意思,大人能听懂即可。

C语言学习也一样。教师把自己看作大人,学生就是婴儿。从语言教学上看,不首先去强调语法等规则,而是教授“例子”。教师可以在课堂上重点讲授一个又一个例子,在课堂上编译、连接并调试运行程序,让学生课后去重复这些程序。这种方法可以让学生在最短的时间内,真正“接触”到C语言,通过老师的程序实例和计算机实现对话。教师通过作业,鼓励和引导学生修改这些简单的程序,并鼓励学生独立完成一些新的程序。这种方法使学生在刚开始上课时就接触计算机,重视学生快速和计算机建立联系,让学生在编辑、排错、调试和运行程序的实践过程中,和计算机对话,达到从实践中学习的目的。

“在例子中,学习和计算机的对话,让计算机训练自己。”

2.2不断学习单词,丰富语言的内涵

会说话的婴儿有了新的渴求,他需要通过不断学习,拓展自己的知识和生存空间,大人们也非常配合他,不断教他新的“知识”,这些新知识,首先就是“单词”。婴儿会指着电视机“啊啊”地叫,大人们教给他说“电视”,于是婴儿学会了“电视”这个单词。他可能说“宝宝要电视”,虽然不符合语法,但他已经勇敢地清楚地表达了自己的需求。宝宝在大人的纠正过程中不断学习,掌握的词汇越来越多,他也越来越具有和人交流的能力。这种能力是通过不断学到“新词”开始的,是不断被大人们纠正提高的。

C语言学习也一样。教会学生编写基本的C程序后,接下来的工作,不是要写复杂的“让计算机唱歌跳舞”的程序,而是让学生不断掌握新词汇,扩大和计算机的交流范围。在C中,这些新词汇就是C的库函数。C语言提供了丰富的库函数,程序员不可能脱离开这些库函数妄谈编程。以往的C教学中,可能会忽视这些库函数的介绍,只有在课本的附录里,才能找到他们的索引。教师课堂上的主要时间,花费在介绍C的各种语法上。考试中,这些语法就是“基础”知识,这又会把学生的学习重点,引导在学习和背这些语法上,无形中又忽视了实际编程能力的培养和锻炼。这是造成学生不会“写程序”重要原因。

婴儿不认识新事物,就无法开口说话。学生如没有很好地掌握库函数,就难以写程序。比如,若没有printf()函数,学生就不可能知道如何把信息显示在屏幕上。因此,学习写C程序,首先需要学好C的库函数。教师在课堂上的重点,就在于在例子中,尽可能多地使用库函数。让学生“见过”并“知道”有这样的库函数可以用,再通过编程作业,促使学生掌握库函数。库函数就是C语言中的“单词”,有了这些单词,才能开始编程,和计算机“对话”。

“不仅要会和计算机说话,而且可以天南海北地聊。”

2.3多说多练

学会说话的婴幼儿对这个世界充满了好奇,他已经长大了。他不仅和他的爸爸妈妈说话,他还要和其他人说。他要去上幼儿园,可以和老师说话,可以和幼儿园的其他小朋友说话,他的语言能力不断进步,他会唱歌,会背唐诗、三字经、弟子规,他已经像个大人了。

学生学习C语言也一样。最开始模仿老师的程序,编写程序,按照老师布置的作业练习编程,最后可以根据自己的兴趣,编写一些应用程序。学生解决问题的能力越来越强,可以排除程序中的错误,掌握调试程序的方法,逐渐能够书写小规模的程序了。

这些能力的提高和培养不是教师在课堂上能够完成的,需要学生在实践中提高。此时教师可以使用特殊资源了,即上机课时。高校中C语言的课时一般由3部分构成:课堂学时、课后机时和专门的上机课时。利用上机课时,教师可以布置小规模的系统编程作业,让学生去完成。通过这种作业,让学生系统掌握C的编程知识,提高程序设计能力和水平。

“多写多练,可以和计算机讨论问题。”

2.4上学后,我们再学语法

婴幼儿长成了小学生,他要开始上学了。在学校,他开始学习课文,通过课文认字、认词、认成语,写字、写词、写句子,他开始锻炼写作文。不知不觉中,他读了很多书,从童话开始,到小说、散文、诗歌,最后是名著。他开始系统学习语法,主谓宾定状补,不胜枚举。

C语言的学习也没有止步。实际上,C语言程序设计课程只能完成上述2.1~2.3部分的内容,这些部分教会了学生写程序,而不是教会了学生C语言的语法。C语言的语法,可以融于课堂的例子中,通过程序设计和调试,直观地介绍C的语法,通过程序练习和调试,由计算机来告诉学生,怎样符合规则,怎样不符合。对于一般的语法,要求学生自学。C程序中的众多语法,比如C语言从main()函数开始执行、变量定义位置、注释写法、函数命名、参数以及函数返回、变量作用域、运算符的优先级等,多是规则,并不难理解,需要学生记住并掌握,而单调的看书和记忆,效果远不如在程序排错和调试过程中学习。

通过程序实践和例子学习语法,而不是只是在课堂上讲授语法。这样,当学生有了一定的编程能力后,再回过头去研究语法,可以更好地提高对C语言的理解水平。如果在一开始就把重点放在语法上,可能反而无法掌握C程序设计技术。

实际上,C的一些语法细节在实际工作中是不常用的。例如,判断闰年的逻辑表达式:( Year%4==0 && year%100!=0 )||year%400==0,其中涉及到运算符、运算表达式以及运算符优先级等问题。若要计算该表达式的值,当然需要记住表达式的优先级顺序等语法知识。但实际工作中,是不鼓励把程序写成那种样子的,实际工作中,要求程序书写清晰明了,简单易懂,强调程序的可读性。因此,上述代码可以写为:

(( ( year%4 == 0 ) && ( year%100 != 0 )) || ( year%400 == 0 ))

“不仅让计算机能听懂,而且要易于听懂。”

2.5学无止境

经过了中学阶段的学习,孩子已经完全掌握了“汉语”这一门语言,此后能否成为编辑、记者、作家、诗人,则需要更多的学习和锻炼。他需要研读名著,体验生活,笔耕不辍。

C语言也如此。C语言课程结束后,学生可以通过参加课外兴趣小组、各种计算机编程竞赛、后续的专业课学习、毕业设计等,不断锤炼自己用C语言进行程序设计的能力。他可能逐渐接触到C语言课程永远无法讲授的东西,比如socket编程、进程与多线程、并发与竞态、Linux驱动程序、Windows驱动程序、研究开源代码等。他成了一名高级程序员、资深程序员、专家,他开始“用Word写程序”。

“计算机编程,一个玩具(计算机)的更高级的玩法(写软件)而已。”

3结语

C语言是一门程序设计语言,教学的目标在于让学生“掌握”C语言。所谓掌握,不仅指C的基础知识、语法结构等,最重要的目的是会用C语言写程序。C的其他所有知识,都在程序编写和调试中得到学习和掌握。

本文根据婴幼儿学习语言的特点,提出了C语言的教学思想和教学方法,其主要思想为:教学目的在于教会学生用C语言写程序,让学生在不断实践中提高程序设计的水平;课堂上,主要通过程序讲授编程的方法和技巧,强调C语言的库函数学习及其使用方法,通过程序重点介绍难点和重要语法知识,一般语法由学生自学;强调大量的C程序锻炼,在C语言的编写、调试中,由计算机教会学生编写程序,在编写程序和调试程序中,学习C语言的语法。

致谢:本论文得到了部级教改项目“部级教学团队――计算机基础系列课程教学团队”的支持。

参考文献:

[1] 李莉. C语言程序设计的教学改革[J]. 计算机教育,2009(12):28-29.

[2] 李业丽. “C语言程序设计”课程建设的思考[J]. 计算机教育,2009(12):31-32.

[3] 赵金萍. “任务驱动式”的C语言程序设计教学[J]. 计算机时代,2007(8):25-26.

[4] 王冰. C语言程序设计课程教学方法的探讨[C]//王永生. 研究型大学建设本科教学改革的研究与实践. 北京:北京交通大学出版社,2008:624-628.

Teaching Methods of C Programming Language Learned from Baby’s Language Learning

ZHAO Shuaifeng, HU Shaohai

(School of Computer and Information Technology, Beijing Jiaotong University, Beijing 100044, China)

Abstract: The C Language is a widely used programming language. In colleges, C Programming Language is an important course of the computer, communications and other related majors. This paper analyzes the language learning process of babies, discusses the teaching purpose and methods of C Programming Language. The learning of the C library functions is emphasized in this paper. Students can learn grammar from the program examples. It points out the advantages of this method.

c语言程序设计论文范文第9篇

关键词:单片机;课程实践;答辩;KEIL C

中图分类号:G642 文献标识码:A 文章编号:1009-3044(2013)36-8369-02

单片机课程实践是高校自动化专业集中实践环节的必修课,是学生学习《单片机原理》课程后,进行的一次全面的综合实践,其目的旨在加深对单片机基础理论和基本知识的理解,培养学生具有单片机系统应用软件设计和开发的能力,在具体实现过程中强化学生的实践意识,提高应用能力、创新意识和合作精神。在项目的实践中,使得学生掌握一定的理论与技术知识,而且应该树立管理理念,建立项目工程思维观念,而这一点正是高级语言编程思维的一种体现。

通过将单片机课程实践和高级语言程序设计实验相结合,使学生在理解单片机理论和高级语言编程思想的基础上,实际动手开发一个实际的应用系统,来提高综合运用所学理论知识的能力。

1 研究内容或对象

引导学生运用已学的单片机理论知识、单片机程序设计方法和高级语言编程思想,具体设计一个实用的小型单片机应用系统,开发设计过程按以下顺序进行――选定课题、调查用户需求、总结归纳数据流程、分析性能、书写需求分析及总体设计报告(包括组成原理图、硬件连接、程序流程、系统功能模块)、完成应用系统的开发、撰写课程实践报告、系统验收、组织课程实践答辩。让学生在这一系列工作中综合运用单片机系统原理以及编程语言等相关课程知识,培养学生的综合素质。

根据单片机课程实践和专业课程实践两个实践教学环节各有4~5周但分散的实际情况,考虑将其进行整合。并在实践教学环节中安排相应的指导老师对学生进行必要的指导和帮助,为学生提供分析思路,解决学生项目完成中碰到的实际问题。

2 研究拟达到目标

通过在单片机课程实践中结合高级语言编程思想,使学生在掌握单片机理论基础知识的同时,通过参与项目的分析、设计与实现,建立软件工程理念,具备一定的理论与单片机实物实践相结合、解决实际应用问题的能力。同时在完成项目的过程中,锻炼科研开发能力和科研论文写作能力,为大四的毕业设计和毕业论文的顺利完成奠定基础,并为以后工作中的理论与实践相结合奠定良好的基础。

使学生在单片机课程实践和高级语言程序编程实践相结合的实践教学环节中,利用所学的单片机系统原理和C语言程序设计基础知识设计单片机应用系统,解决单片机系统应用中的实际问题,掌握高级语言编程思想,借助相关编程工具,完成一个小型项目的自主分析、设计与实现。

3 主要研究方法

教师提供部分项目供学生选择,学生亦可自拟项目,但课题的选择要由教师审查核准。项目尽量选择实际需求的题目,让学生走出校园,通过调查走访,了解国内单片机应用发展的状况,开阔眼界,而且在开发一个真实项目的过程中,带来求知的源动力,激发学生自主学习的渴望以及创造力;对于虚拟项目,要求学生做到切合实际需求,能解决一定的应用问题,有一定的应用价值。

编程开发工具原则上推荐学生使用KEIL C,如果学生认为其它开发工具更适合可由学生自主选择。由于实际可用的编程开发工具与日俱增且不断更新,为此在课程实践中,对学生开发工具的选择不做过多限制,使得学生可以选择自己感兴趣的程序设计工具进行项目开发,既锻炼了学生自学的能力,又能让学生成为项目开发的决策者,这种主人翁意识使得学生变被动学习为主动学习,从而激发学生自主学习的积极性。

为了防止学生对课程实践任务敷衍了事,对课程实践的考核方式由原来的提交程序和文档改变为答辩的方式。且在集中教学环节之前就让学生明确单片机课程实践的任务,同时考虑在集中教学环节结束后适当放宽学生上交可运行的项目程序和课程实践报告以及组织答辩的时间,让学生能更好的延续自主学习的积极性并进一步完善项目的开发。

4 特色、创新及推广应用价值

通过将单片机课程实践和高级语言程序设计基础实验相结合,让学生在项目的分析、设计、与实现的过程中掌握单片机理论知识、单片机系统应用的设计方法和高级语言程序编程思想 ,提高自动化专业学生理论与实践相结合的能力,激发学生的学习积极性和主观能动性,提高学生解决实际应用问题的能力。

《单片机原理》课程实践教学,将单片机课程实践和高级语言程序设计实验两个教学环节有机整合,让学生能在该实践教学环节中综合运用单片机系统原理和高级语言程序设计基础以及相关编程思想等多种知识,培养初步的科研能力和科研论文写作能力以及团队合作精神。并通过组织课程实践答辩使学生进行类似毕业答辩的演习。

在自动化专业学生的单片机课程实践教学环节中,通过团队合作的方式,以共同完成项目为目标,让学生在单片机课程实践中综合运用所学的单片机系统原理和高级语言程序设计基础的理论知识来完成项目的分析与设计,并借助相关的编程语言来完成项目的编程实现。将原本独立但有高度关联的两个实践教学环节进行有机整合,可以让学生有更多的时间来系统而连续的综合运用所学的相关知识,进而更好的将理论与实践进行有机结合,激发学生的学习热情,提高学生的学习积极性。

参考文献:

c语言程序设计论文范文第10篇

关键词:C++程序设计语言;实践教学;建设

中图分类号: G641 文献标识码: A 文章编号: 1673-1069(2017)01-103-2

1 实践课程简介

本课程属于我校计算机类本科生的第一门专业基础实践课,课程内容包括C++语言程序设计的理论和实践两个部分。基础理论部分内容包括C语言程序设计的基本概念、C++面向对象程序设计、类、对象、继承、派生、多态、模板等概念。实践部分则包括C++语言程序设计的基本训练、类和模板的设计编程、几个算法的实现、简单应用等。

C++语言程序设计是计算机类本科生的一门程序设计语言基础课程,虽然现在大多数程序员使用Java语言做项目开发,但作为程序设计的入门语言,考虑到在培养程序员思维方式的转变过程中,既要兼顾理解计算机硬件和软件的结合,又要程序员从传统的数学逻辑思维方式继承并成功转型到计算机逻辑思维方式。目前也只有C或C++语言能够较好的满足这种需求。

本课程注重采用C++编程语言的最新国际标准[1],结合我们学校实验室硬件的情况,尽可能采用国际上正在流行的比较新的编程软件进行实践教学。使得课程的讲授内容始终跟踪C++程序设计语言的前沿性和先进性。积极学习和引入国内外同行的先进教学方法和教学案例。简单介绍C++语言程序设计的几个流派、现实的应用情况及未来发展趋势。

本课程强调学生在认真听课、阅读理解课本上的有关程序设计的概念、方法外,还要善于利用互联网的资源,特别是学习C++语言程序设计的几个官方网站、几个行业大牛的网站上的知识。在理解理论的基础上展开实验验证,不断的修正自己的理解偏差,使自己学到的知识不断完善,形成体系,为后续课程的学习打下一个坚实的基础。在C++语言程序设计实践教学过程中,强调合作能力的培养,团队意识的形成。自2004年以来,本课程教学效果得到学生的一致肯定,锻炼和培养了学生的实践能力,比较好的完成了本门课程的教学任务。

2 实践教学目标

本课程的实践教学目标包括:学生通过本课程的学习、实践,让学生从中学生传统的数学思维方式转变为结合计算机软硬件特点和计算机逻辑的计算机思维模式去分析问题、编写程序、实现解决问题。通过C++语言程序设计课程的实践训练,了解什么是面向对象的设计思想,养成良好的程序设计风格。利用C++语言程序设计来解决一些实际问题;学会自顶向下,逐步细化,会把复杂问题拆解为几个更为简单的问题,利用面向对象技术进行设计和编程。培养团队协作和开放意识,为计算机类专业后续课程的学习打下一个良好的基础。

3 实践教学方法、手段(举例说明采用的各种教学方法及手段的使用目的、实施过程、实施效果)

①建立以转变传统数学逻辑思维方式为结合计算机软硬件特点的计算机逻辑思维方式为主线的,分层级、渐变式的实验教学体系。首先训练学生学习计算机编程的三种基本逻辑,数组等数据的组织方式,学会排序等几个简单常用算法、解决一些简单问题。然后学习把数据和定义在数据上的操作整合在一起引入类的概念、学会类的定义、理解继承、派生、多态、学会模板的定义和使用、学习文件的使用方法。使学生养成良好的程序设计风格、形成计算机逻辑思维模式。

②采用灵活多变的教学方法,加快提高学生的编程能力。实践教学过程中,针对一些具体的例题,先解决基本问题,然后分析对于一些语句进行适当修改和加入新的语句就可以解决类似的其他问题。设计、利用一些实验数据发现所设计的程序的关键性问题,然后引导学生去解决此类问题。因为本门课程是学生接触的第一门实践性课程,教学过程中引出的问题有些是当前阶段可以解决的,一些问题还要通过后续课程的学习提高能力后才能解决,不一定马上就要把问题解决掉、重点是培养学生继续学习的兴趣。激发学生自主学习的积极性、主动性和能动性。

鼓励学生自主组建C++语言程序设计兴趣小组去找协作课题、完成课程设计作业。实验课堂上也鼓励学生多走动、多交流。建立网上资料、技术分享机制、鼓励学生分享解决问题的方法,老师根据学生的分享情况,适当增加学生的平时成绩。

③逐步建立学校和社会的协同培养模式。在教学过程中,课外时间如有可能,适当组织部分学生走出校门,利用校友资源,组织参观企业、科研院所、地方政府等单位在计算机方面的应用情况。了解社会需求、拓展视野、激发学生学习本专业的积极性。形式多样的人才培养协同创新模式。教学团队通过学院与广州易数信息科技有限公司、广东省信息安全测评中心、广州杰赛科技股份有限公司、广州腾科网络技术有限公司等企事业单位建立了长期战略合作关系。这些都为创新型人才培养打下了坚实的基础。

4 实践教学考核方法

本课程的总评价分数包括平时考勤,平时作业,中段考试、期终前上机考试、课程设计与新技术资料翻译,期末考核六部分。分别占10%、10%、15%、15%、10%、40%。其中,平时作业主要是针对课程中每章节后,为巩固所学内容所布置的习题编程实现;课程设计则主要是训练学生的协作能力和解决实际问题的分析、设计、编程能力、要求提交一份相对完整的设计文档;英文资料翻译采用自主选择网络上国外近半年来计算机类的英文资料、鼓励组团分解翻译大块文件,要求每人翻译至少2个A4版面。期末考试通过闭卷方式考核程序设计的能力,期终考试占总成绩的40%。

5 实践教材

本课程的实践教材为本课程主持人及参与人员王玉山等所编著的《C++语言程序设计实践》,该教材现在只有电子稿,还没有正式出版。

6 实践教学环境和教学资源

本课程的实践教学环境为:①学习版的微软公司的Visual Studio Visual C++的集成开发环境。②Bloodshed Dev-C++(C++开发工具)V5.11.0中文免费版。③奇趣科技开发的跨平台C++图形用户界面应用程序开发框架Qt。

教学资源:

①课程概要:课程简介、教学大纲、课程特色、教学效果。

②在线课堂:课程PPT。

③实验指导:实验指导书和实验报告。

④部分大作业选题目录。

⑤C++语言程序设计课程及研究常用、重要网址列表。

7 实践教学效果

经过多年探索和实践,教学团队在人才培养模式、教学方法、实践教学改革、试验教材编写等方面取得了一定的成绩。团队成员发表相关教改论文10余篇,获得过2010年广东省千百十校级人才项目,主持广东外语外贸大学校教学研究课题“毕业设计管理系统”,2010年度、2012年度广东外语外贸大学优秀科研业绩奖二等奖,周咏梅和林华两位老师获得过年度优秀个人。教学团队成员具有丰富的教学改革实践经验和理论基础,保证了本门实践课的教学质量。

通过大作业与新技术资料翻译,提高了学生主动学习的积极性、培养了团结协作精神。提高了解决问题的能力。组织部分学生到相关企业参观、坚定同学们学习本专业的积极性。

指导学生积极开展科研实践和申报项目,获得成绩如下:

①在王玉山老师的指导下,软件系2015级大学一年级新生林泽聪等获得了广东省团委的攀登计划项目:个人健康档案,获得资助2万元。

②在周咏梅和蒋盛益老师指导下,彭金原等同学获得广东外语外贸大学校级大学生创新创业项目:网络舆情构建关键问题研究―以微博客为分析对象(2011年校级);黄确君等获得:面向高校图书馆的推荐系统(2012年校级)。

部级学科竞赛获奖情况:

Innc多媒体解析语言,2007年在天津举办的全国第10届挑战杯比赛3等奖,2004级软件工程专业,文羲畅。指导老师王玉山。该项目同时获得广东省2007年第九届挑战杯1等奖。

省级学科竞赛获奖情况:

①四灵象棋――基于互联网与移动设备联合开发,广东省第18届“高校杯”软件作品赛一等奖,2006级计算机专业:郭勇、刘荣科、何健,指导老师:林华、蒋盛益、吴彩虹、王玉山。

②基于Web3d的网上服装商城 , 第十七届广东省“文泰高校杯”软件设计(本科组)竞赛1等奖, 2004级软件工程专业学生,指导老师,王玉山。

泛珠三角安利杯大学生计算机作品赛:

2006级计算机专业,陈俊平,余雯. 基于C++语言程序设计的垃圾邮件识别系统, 泛珠三角大学生计算机作品赛广东赛区, 二等奖,2009。

2006级计算机专业学生,“任意达”――私人定制高校客车联盟系统,大学生计算机作品赛暨泛珠三角大学生计算机作品赛广东赛区选拔赛三等奖 , 指导教师林华。

8 实践课程特色及价值

《C++语言程序设计》作为大学计算机类1年级新生的第1门实践课程, 肩负着既要把学生从传统的数学思维方式向结合计算机软硬件特点的计算机思维方式转变,又要转变学生的应试教育模式学习方式向探索式、实证式、协同式、全球互联网求助式、开放式教育学习方式转变。还要求学会面向对象的程序设计思想方法,为后续课程的学习打下一个良好的基础。课程内容本身要求理论联系实际、在理解理论的基础上进行实践验证并不断修正、完善自己理论体系。学习本课程后,要求能够进行面向对象的类的设计,能够解决一些实际问题。本课程的特色和价值主要表现在:

①课程内容理论联系实际,所用软件实验工具、环境要符合时代需要、要采用最新的C++语言程序设计国际标准进行实验讲学,在试验中老师要善于对于同一个程序代码、进行适当变换就可以讲解、实验几个概念和方法,争取用较短的实验时间获得尽可能大的教学效果。

②对于实验内容的数量和深度做到适度,有时候甚至要把问题进行分解,让学生容易理解和实验操作,然后再把解决的问题整合串联、形成比较复杂的编程逻辑、达到锻炼能力、逐步提高水平的目的。也要让学生逐步学会对于程序提出各种修改方案进行实验、达到灵活运用。由于是大学新生的第一门实验课,要学习的基本概念、基础方法比较多,一些程序技巧和需要记住的语句段落要有适当重复训练。内容也要紧密联系实际,吸引学生投身于科技创新。让学生设计一些联系实际的程序,让学生具有的成就感,吸引学生更深入的学习C++语言程序设计。

③在保证基本实践教学的同时,要善于发现好的苗子,并适度引导他们开展四年的项目规划,利用课外时间进行深入研究,形成合作团队,为人才培养的连续性做出贡献。组织部分学生到企业参观实习,让学生早点了解行业需求,使得今后的学习更加贴近实际、符合社会需要。

参 考 文 献

上一篇:生物学理论论文范文 下一篇:地理课教学论文范文

友情链接