C课程设计实践与研究

时间:2022-09-12 11:24:52

C课程设计实践与研究

摘要:C课程设计是C程序设计课程的一个重要的实践环节,为了提高课程设计的教学效果,对C课程设计独立设课,与C程序设计课程有效衔接,分阶段完成不同的实训任务,能够更好地掌握C程序设计知识和技能,通过实践取得了较好的教学效果。笔者在分析独立设课形式的C课程设计的优势的基础上,对其实施过程进行了探讨和分析,最后简要总结了C课程设计课程开设的经验和不足,有待进行更多的探索。

关键词:课程设计;实践环节;教学效果;实训任务

1引言

C程序设计是高校计算机及其相关专业开设的第一门程序设计课程,也是一门重要的专业基础课程,一般开设在第一学期,课程的教学效果直接影响到后续的多门重要专业课程的学习。该课程的实践性很强,C课程设计是学习C语言的非常重要的实践环节之一,一般安排在C程序设计课程理论知识学完之后的1~2周集中时间段完成,任务是完成一个完整的小型综合项目的开发。C课程设计时间较紧,学生刚学完新的知识,还没来及对前期所学知识进行系统复习,就要进入C课程设计的选题、项目设计当中,并且这些又与工程实践相关,项目的需求分析、概要设计、详细设计等,以及项目设计报告的撰写,对于大一新生来说都是非常陌生的,加上还有其他课程繁重的学习任务,因此,时间紧、压力大,课程设计的效果可能不够理想。考虑到上述情况,以独立设课形式开展C课程设计,从时间上、教学方式、内容上综合考虑安排,保证C课程设计的教学效果。

2C课程设计独立设课的优势

C课程设计的目的是,通过课程设计,进一步掌握以下课程知识:掌握数据类型、控制结构、数组、函数、结构体、指针、链表操作、文件操作等;掌握小型综合C项目的系统测试、调试的概念和方法;综合应用上述知识和技能解决实际问题。独立设课形式的C课程设计由于其时间充足,在下述方面存在明显优势。对C课程设计课程独立设课是为了更好地达到C程序设计的教学目标,实现学生对C语言的综合运用。为了完成好C课程设计,就需要对C程序设计课程知识进行系统的复习、巩固,才能为综合运用知识解决实际问题打下扎实的基础,使得课程设计能够顺利开展。知识的巩固需要时间,学生刚学完所有新知识,要求在短时间内做到综合应用是有难度的或者效果不一定能够达到预期。而以独立设课形式开展课程设计,则在时间上给予了充分的保证,并且前期为完成C程序设计课程的考核,学生对课程内容进行了系统的复习,消化吸收了理论知识,对于算法的理解和实践更加熟练,这些都是保证课程设计顺利开展的前期基础。以独立设课形式开展课程设计,能够在课程前期有针对性地进一步加强或补充综合项目开发所需的知识和技能,能够指导学生进行深入调研,让学生充分理解软件工程的思想和开发方法,分阶段有序推进项目的开发以及完成课程设计报告的撰写,从而将课程设计做得更充分、更见成效。

3C课程设计课程的实施过程

C课程设计课程安排在C程序设计课程的下一个学期,时间上紧密衔接,课程32学时,均是实践学时,课程采用项目导向、案例驱动的方式。实施过程包含以下几个重要方面。3.1教学内容的安排。课程的教学内容大体分为两个部分:前期分阶段项目实训和后期综合项目实训。分阶段项目实训是为了巩固和强化综合项目实训所必备的重要知识和技能,为综合项目实训做铺垫。分阶段项目实训包括程序流程、函数的应用、综合项目的组织、数组的应用、结构体的应用、指针的应用(链表)、文件操作等。根据每个分阶段项目实训的内容及难度安排相应课时,有针对性地加强巩固某些知识或技能,比如,指针应用项目安排了学生信息登记系统中链表的增删查改功能的实现。3.2综合项目选题的确定。综合项目的选题事先由教师拟定,可以包括信息管理类项目,如学生成绩管理系统、火车订票系统、图书馆管理系统等,游戏类项目,如五子棋游戏、俄罗斯方块游戏、飞机射击游戏等,以及其他应用类项目。学生从题目库中选题,为了激发学生的兴趣,题目也可由学生自拟,并交由教师审核。设置题目库时,要注意将C理论知识与实际应用相结合,综合性要强,涉及大部分的C课程知识和编程技能。选题要多样化,能够激发学生的兴趣和求知欲,最好能紧密结合学生的专业。选题要有适当的难度,学生能够以小组形式相互协作,通过不断探索和实践共同完成项目[1]。3.3课堂教学组织和指导。由于本课程为实训课,重点就是加强学生实际编程操作的能力,在课堂教学的安排上,教师先布置每次的实训任务,讲解并示范任务的重难点及注意事项,根据实训任务的要求,学生独立或分组协作完成。课堂教学通过案例示范、实践指导、课堂提问、问题讨论分享等多种形式进行。其中,后期综合项目实训阶段,结合培养学生工程素养和团队精神,以小组形式,小组成员分工协作,共同完成整个项目。课程设计的成果主要包括项目代码和课程设计报告。项目的开发按照软件工程的方法组织,按照需求分析、概要设计、详细设计、编码、测试等阶段有序推进,先以一个简单实例由教师进行示范,示范内容包括概要设计、详细设计、编码调试、课程设计报告撰写等,学生模仿并修改,之后完成自己的课程设计内容[2]。软件工程的开发方法、课程设计报告的撰写对于学生来说是全新的内容,通过项目的开发和设计报告的撰写,学生对软件工程的思想和方法有了初步认识和掌握,具有了一定的工程素养、团队精神。3.4课程设计的考核及评价。C课程设计课程的最重要考核内容就是综合项目设计,根据学生提交的项目代码、课程设计报告以及学生项目答辩情况等进行项目成绩的综合评定。最终成绩由这三方面成绩按照一定比例产生。项目代码方面要求系统设计方案正确合理、功能完善、结构合理、界面友好,并根据选题难度、实际工作量等综合评价。课程设计报告方面要求文档的格式规范、结构合理、内容完整充分、文字表达准确流畅、逻辑性强等。项目答辩时,要求学生运行程序,并对系统功能、设计思路、算法重难点等进行陈述,然后回答教师的提问。答辩成绩从两个方面考核:一是项目陈述,要求概念明确、思路清晰、语言流畅、表达准确,能够准确阐述系统设计的重难点;二是回答提问,要求回答提问有理有据、概念清楚、思路清晰、逻辑严密、回答准确。

4结语

C课程设计课程开设以来,学生普遍反映该课程促进了其对C理论知识的理解和掌握,提高了应用C语言编程解决实际问题的能力。从后续相关专业课程的学习情况来看,由于C语言的基础更加扎实,实际教学效果得到了提高。当然,C课程设计课程的某些环节还存在着一些不足,如项目答辩时的提问,如何避免小组中仅由个别主要负责的学生陈述、回答问题,这些问题有待进行更多的思考和探索。

参考文献

[1]张军翔,刘兴红,陈荆桥.项目实践教学法在高校综合课程设计中的应用研究[J].湖北师范学院学报(自然科学版),2018,38(1):82-86.

[2]魏振华,刘志锋,蒋年德,等.Cosplay示范—模仿教学法在《C语言课程设计》中的有效应用[J].东华理工大学学报(社会科学版),2015,34(1):92-96.

作者:李倩 单位:成都大学