当前位置:首页 > 专题范文 > 公文范文 >

C程序设计实践教学中课程设计的实施与研究

时间:2022-10-29 17:00:01 来源:网友投稿

摘 要:C程序设计是高校计算机相关专业的一门重要的学科基础课程,其学习效果对后续专业课程的学习有着极其重要的影响。C程序设计是一门实践性很强的课程,课程设计是其重要的实践环节之一,通过课程设计,能够巩固课程知识和技能,提高学生在C程序设计中的综合应用能力,提高学生分析问题、解决问题的能力,培养学生工程能力、创新能力和团队精神。本文主要从C课程设计的目的和作用、实施过程,以及对实施过程中的几点思考等方面进行了探讨和分析。

关键词:C程序设计;课程设计;计算机课程

中图分类号:TP312;G642.4 文献标识码:A 文章编号:2096-4706(2018)10-0145-03

Abstract:C programming is an important subject basic course for computer related major in colleges and universities,and its learning effect has an extremely important influence on the study of subsequent specialized courses. C programming is a very practical course. Curriculum design is one of its important practical links. Through the curriculum design,it can consolidate the knowledge and skills of the curriculum,improve the students" comprehensive application ability in the C program design,improve the students" ability to analyze and solve problems,and cultivate the students" ability of engineering,innovation and team spirit. This paper mainly discusses and analyzes the purpose and function of C curriculum design,the implementation process,and some thoughts in the implementation process.

Keywords:C programming;curriculum design;computer courses

0 引 言

C程序设计课程是高校计算机技术与科学、软件工程、网络工程等计算机及其相关专业开设的一门专业基础课程,是数据结构、操作系统等核心课程及C++程序设计、Java程序设计等其他程序设计课程的前导课程。这门课程一般开设在大学一年级的第一学期,成为了新生的第一门专业课。该课程的学习效果尤为重要,会极大地影响到学生后续专业课程的学习。

C程序设计课程的教学目标是,通过理论和实践课程的学习,使得学生掌握C语言的各种语法规则和基本知识,培养学生熟练阅读程序的能力,使得学生能够运用结构化程序设计方法设计、编写并调试程序,能够运用C程序设计去解决实际应用问题,从而培养学生分析问题、解决问题的能力,以及创新能力,并为后续专业课程的学习奠定扎实的基础。

课程设计是程序设计类课程的重要实践教学环节之一,它以项目为导向,C课程设计的内容涉及C语言基础知识、控制结构、数组、函数、指针、结构体、文件等。课程设计对于C语言知识和技能的综合应用、培养学生的工程素养来说是尤为重要的。

1 C课程设计的目的和作用

C程序设计课程是一门实践性很强的课程,其语法规则、知识点繁多,内容较为复杂,因此在课程理论学习之后进行课程设计十分必要。虽然课程中的实践环节安排了相应的课程实验,但这些实验主要是针对各章节知识点的应用而设计,是为了实现学生对知识点和算法的进一步巩固,而对于综合应用C程序设计的知识和技能来进行实际问题的解决是远远不够的。

C课程设计不同于在C语言教学过程中安排的各个实验,平时实验主要针对各章节某些知识点而设置,是针对一些小的问题进行解决或经典算法的应用,学生实验时多为模仿或稍作改进,实用性不强。C课程设计的教学目标是,通过小型综合项目设计,巩固C语言的理论知识和操作技能,提高C程序设计的综合应用能力,培养学生分析问题、解决问题以及实践创新能力,为提升学生专业素养打下坚实的基础。

2 C课程设计的实施过程

C课程设计一般安排在C程序设计课程的最后1-2周,在学完了全部理论课程内容并完成了各阶段的实验之后集中时间进行。其实施过程包含以下几个主要环节。

2.1 确定选题

课程设计的选题由教师提供或学生自拟,教师将课程内容与实际应用相结合从而设计题目库,其中的题目分为不同类型,比如信息管理类,如图书馆管理系统、火车订票系统、学生信息管理系统等;也可以是游戏类,如五子棋游戏、推箱子、扫雷、贪吃蛇游戏等;还可以是其他应用类。学生可以从题库中选题,也可自拟后提交教师审核。教师提供选题时最好能够提供相关的选题说明,包括选题目的和意义、拟解决方案、预期效果等,让学生在选题时能够对题目有一个大概的了解。比如,信息管理類的项目,要求使用文件或数据库的形式存储数据,并实现相关信息的增删查改;游戏类的程序可以使用图像,有图像的读取、显示、处理操作。这些对选题的说明能够让学生在选题时更清楚的了解到系统设计需使用哪些C语言的相关技术,并可以根据自己掌握的情况和兴趣作出适当的选择。

2.2 项目的前期调研

选题确定后,教师便可指导学生查阅收集资料,了解系统的需求,明确设计内容和思路,确定初步设计方案。查阅收集资料的途径有多种,目前高校一般都提供文献检索系统教师可以对搜集资料过程进行示范,指导学生如何利用文献检索系统进行资料的查阅和收集。项目调研也可以搜索同类相关的实际系统并实际运行,通过分析其中的优缺点,从而明确项目的设计需求。

2.3 项目的设计和设计报告的撰写

项目的设计则按照软件工程的过程开展,然而,大一新生对于小型综合项目没有开发经验,因此,项目设计和设计报告的撰写,可以由教师先以一个实例进行统一示范,学生再进行模仿并修改,之后根据C课程设计的选题完成自己的项目。教师示范阶段主要包括概要设计、详细设计、编码调试、撰写项目设计报告及演示汇报[1]。通过教师系统、详尽的示范和引导,可以减少学生对C课程设计的畏惧和困惑,激发了学习、实践的兴趣和动力,使学生逐渐树立了自信,培养了能力,最终掌握了C课程设计的全过程。同时,这种示范和指导加快了学生课程设计过程,能够给予学生更多的时间进行创新性的发挥[2]。

以“图书馆管理系统”C程序中的界面设计为例,根据模块化程序设计思想,整个项目由主界面、管理员模块和读者模块构成,分别对应Main函数、Admin函数、Reader函数,后两个函数还包括一些子函数,实现具体功能。管理员模块主要包括图书信息的管理、读者信息的管理等;读者模块主要包括图书的查询、借还功能等。系统的交互界面采用基于文本模式的菜单形式实现。菜案设计的核心包括:输出菜单的语句和无限循环语句。菜单的输出可以编写一个DisplayMenu函数来完成,代码为多行printf语句,如:printf(“****1、功能名****”)。无限循环语句是为了控制程序在菜单界面的框架下反复运行,即选择某个菜单项,调用对应功能函数,函数功能执行之后会返回菜单界面,直到选择退出系统。当教师对以上过程进行示范和讲解后,学生只需模仿编程并加以修改,便能将这种方法应用到自己项目中。

2.4 项目答辩

课程设计的最后一个环节就是项目答辩,要对学生完成的课程设计进行综合评价,对学生进行考核。首先要制定课程设计的评分标准,从程序完成情况、设计报告的撰写和答辩情况等几个方面进行综合评价。程序完成情况包括设计方案是否正确、合理,程序功能是否完善,结构是否合理,界面是否友好,还要结合选题的难度,实际完成的工作量等综合考查。设计报告的评价包括文档的格式是否规范,结构是否合理,内容是否完整、充分,文字表达是否准确流畅,逻辑性如何等。答辩环节要求学生当场运行程序,对项目情况进行陈述,并对教师的提问进行回答。答辩情况的评价主要包括两个方面:一是项目陈述,要求概念明确、思路清晰、语言流畅、表达准确,能够准确阐述设计的重难点;二是回答提问,要求回答教师的提问有理有据,概念清楚,思路清晰、逻辑严密、回答准确。

3 C课程设计中的几点思考

在上述课程设计的实施过程中,有几点需要注意的问题。

课程设计的项目要具有实用价值和现实意义。选题要多样化,要能引起学生的兴趣和求知欲。要将课程的理论知识和实际应用结合起来,最好能和学生专业紧密结合,体现专业特色。项目要有适当的难度,学生能够以小组协作的方式制定计划并通过不断探索和实践来完成项目。项目的综合性要强,需要运用C程序设计的大部分的课程知识和编程技能来实现[3]。以“图书馆管理系统”为例,该项目涵盖了C程序设计的大部分重要内容。图书信息、读者信息的存储既可以用结构体数组,也可以采用结构体链表。数据查询时,可以利用顺序查找算法实现,若是有序数组,则可以利用二分查找算法加快查找速度。各类信息的排序输出可以利用冒泡排序、选择排序等经典算法实现。采用数组方式或链表方式存储数据,对于数据的增删查改分别涉及到数组、链表的不同算法的应用。数据的永久存储涉及到文件的创建、读写操作。整个系统的程序涉及到C语法基础、控制结构、数组、函数、指针、结构体、文件等C程序设计的大部分内容。

项目应以团队合作的形式开展。课程设计的项目往往工作量较大,主要以分组的方式开展,学生在项目中负责不同的任务,成员之间相互沟通、相互合作,共同完成整个项目。这种项目团队的形式与学生个人承担整个项目相比,更有利于培养学生创新能力、团队合作意识,更加符合当今企业的需求。

项目答辩时的提问,要注意避免小组中的某些学生逃避回答,仅由项目主要负责的学生回答问题,这样的回答仅仅考核的是团队整体水平,甚至是某位学生的水平,并不能代表小组中各个成员的实际完成情况。因此,要保证足够的现场答辩时间,逐个对小组中的成员进行提问,检查其负责部分的完成情况、对项目整体的掌握情况及知识技能水平。

4 结 论

C课程设计将课程理论和工程实践结合起来,实践证明,其促进了学生对课程知识的巩固和综合应用,提高了学生分析问题、解决问题的能力,培养了学生的创新思维和团队精神。当然,课程设计的模式和实施过程有待进行更多的探索和实践,同时也寻求更好的模式和做法。

参考文献:

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

[2] 张燕.城市轨道交通运营管理专业课程设计实践教学活动探索——以《城市轨道交通客运组织》课程为例 [J].高教探索,2016(S1):81-82+91.

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

作者简介:李倩(1976-),女,汉族,山东烟台人,讲师,硕士。研究方向:计算机网络技术及应用。

推荐访问:程序设计 课程设计 实践 实施 研究

相关推荐

  • 高校《C程序设计》课程教... 2022-10-21
  • VC#.NET数据库应用程序设... 2022-10-29
  • 以计算思维为导向的大学... 2022-10-29
  • 化工原理课程设计心得15篇 2022-05-16
  • 对课程设计的认识和感受3篇 2022-05-31
  • 基于工作过程的项目化课... 2022-10-24
  • pcb课程设计实验报告5篇 2022-11-11
  • 交通规划原理课程设计 2022-11-26
  • 现代控制工程课程设计 2023-01-07
  • 动画专业声音课程设计研究 2023-01-08
  • 2023课程设计总结与体会(... 2023-01-27
  • 汽车设计课程设计 2023-02-25
  • 工程项目管理课程设计 2023-03-08
  • 大学生劳动实践报告怎么写8篇 2022-03-19
  • 大学生署期实践报告11篇 2022-03-19
  • 教师个人专业综合实践(... 2022-03-28
  • 大学生餐饮实践报告1000字3篇 2022-04-28
  • 做销售的实践心得500字5篇 2022-05-12
  • 相关法治实践活动活动感... 2022-05-13
  • 孝敬父母实践内容11篇 2022-05-13
  • 2021小学寒假实践活动安排11篇 2022-05-15
  • 健康实践活动心得7篇 2022-05-16
  • 网络营销实践实验总结4篇 2022-05-19
  • 党员积分制管理实施方案... 2022-03-21
  • 档案管理办法 档案管理... 2022-03-21
  • 实施乡村振兴农村人居环... 2022-03-29
  • 2022年小学校园文化建设... 2022-03-30
  • 2022年实施乡村产业振兴... 2022-04-12
  • 指导青年教师计划及实施... 2022-04-17
  • 农村饮水工程实施方案4篇 2022-04-19
  • 绿色学校创建计划及实施... 2022-04-19
  • 劳动技能比赛实施方案范文3篇 2022-04-22
  • 教学质量提升实施方案14篇 2022-04-23
  • 研究生事假请假条(完整) 2022-04-06
  • 研究生入党申请书优秀范... 2022-04-06
  • 2022年度研究生预备党员... 2022-04-07
  • 关于中学生消费状况的调... 2022-04-19
  • 小学教育调查与研究报告3篇 2022-04-28
  • 数学教育调查与研究报告9篇 2022-04-30
  • 2022研究生毕业自我鉴定简短 2022-05-03
  • 研究丰田品牌迁移指数调... 2022-05-04
  • 激光与物质相互作用的研... 2022-10-19
  • 研究生应聘自我介绍(2022年) 2022-05-06