学生成绩管理系统毕业论文C语言

2025-03-20|版权声明|我要投稿

学生成绩管理系统毕业论文C语言(精选7篇)

1.学生成绩管理系统毕业论文C语言 篇一

由全国软件大赛成绩看C语言教学方法

摘要:C语言作为一门专业基础课,其重要性是可想而知的,但是往往教学效果难以达到最好。通常的教学方法过于注重理论讲解,对实际应用编程涉及很少,因此该课程显得枯燥无谓,学生失去了学习的兴趣。以全国软件大赛选拔赛答题情况为切入点,对高职院校C语言教学情况进行了分析,并就如何提高高职高专学生C语言程序设计能力提出几点建议。

关键词:全国软件大赛;高职;C语言;程序设计;教学方法

中图分类号:TP311文献标识码:A文章编号:1009-3044(2011)26-6465-02

Teaching Methods of C Language According to the Results of Countrywide Software Competition

CHEN Lu-jun1, ZHANG Na2, REN Lei1

(1.University for Science & Technology Sichuan, Chengdu 611745, China;2.Sichuan Technology & Business College, Dujiangyan 611830, China)

Abstract: C language is a basic course and is very important.But the teaching results are not very good.The old methods pay attention to theory studying and neglect application.Therefore this course is so baldness and the students lose interest.According as the answer results for countrywide software competition, it is analysised the teaching instance of c language in High Vocational College and some proposition is given for improving the programmable ability of the students in High Vocational College.Key words: Countrywide Software Competition;High Vocational College;The C Programming Language;Programming;Methods of teaching

全国软件专业人才设计与开发大赛(以下简称全国软件大赛)是工业和信息化部人才交流中心举办的面向全国各高等院校在校学生的国家级软件领域的学科竞赛,是为推动我国软件开发技术的发展、促进软件技术人才培养、选拔发掘优秀软件人才、展示软件精英风采等目的,从而全面推动我国软件行业发展及人才培养进程的群众性科技活动,大赛设JAVA软件开发和C语言程序设计两个比赛项目。

全国软件大赛每年举行一次,今年是第二届。大赛初赛情况[1-3]及C语言教学分析[4]

2011第二届“国信蓝点杯”全国软件专业人才设计与开发大赛初赛在全国28个省市设立了分赛区,共设65个赛点,700多所院校的近万名选手参加了比赛。比赛答题情况如下:

1.1 成绩情况

表1为成绩分档统计表。

成绩分布直方图如图

1、图2。

分数多集中在10~30附近。

C本科参加考试人数较多,对大题的发挥水平也较好。

1.2 题目得分率情况

得分率数据如表2。

得分率分布直方图如图3。

1.3 题目分析

各参赛选手都是各参赛学校选拔的优秀学生,他们的成绩很大程度上反映了各参赛学校的教学水平及教学实际情况。从以上图表中我们可以得出以下结论:

1)总体上看不论高职还是本科C语言组比JAVA组平均分要低;C语言高职组比本科组平均分要低;JAVA本科组与高职组平均分差不多。反映了C语言与JAVA的教学难度和教学效果不一样,C语言要难学点,学生的学习效果也比不上JAVA的学习效果。

2)总体上填空题得分率高,编程题得分率低。这反映了参赛选手在分析和调试已有程序方面的能力要好于独立设计编码的能力,学生的独立设计及编码能力需要加强;另外填空题目中包含的逻辑相对简单也是得分率高的原因。

3)对于相同难度、相似题型的C语言和JAVA语言的题来说来说,C语言高职组得分率普遍比本科组低,JAVA高职组与本科组差别不大(后几道题得分率还约高于本科组)。反映了学生高中基础对c语言的学习影响较大,而对于JAVA的学习没有多少影响,这与教学实际比较吻合,在高职c语言教学中如何面对现状提高教学效果值得思考。

4)C高职第5题(字符串轮换题)的低分反映了选手在对字符串的本质认识上还需要加强。C语言中实际上没有串这种类型,只有指向第一个字符的指针。通过对某个适当位置设置‘’就可以改变串的长度。参赛情况

本着检验课程的教学效果、培养学生的实践创新意识和能力、发现并培养符合企业需求的优秀人才学生苗子、带动学生树立求知上进的学习风气及推动学校软件开发与应用课程体系和课程内容改革的目的,学校决定组织学生参加比赛。由于是第一次参加,学校决定派小规模的参赛队伍参赛,因此我校组织了10人参加选拔赛。

本着检验教学效果和带动学风的目的,在参赛人员的选定上,我们没有选大三学生,而是选了6名软件专业的大二学生(其中女生2名),4名大一学生(其中女生2名),总共男生6名,女生4名。报名之后利用中午及晚上课余时间对学生进行了将近5周的赛前辅导。

初赛结果有8人获奖,其中一等奖一名(大二),二等奖3名(大二2名,大一1名),三等奖4名(大二3名,大一1名),也就是说大二全部有收获,只有大一的两名学生落榜;获一等奖的大二学生在北京的全国决赛中仍然获得了一等奖。

通过这次参赛的成绩,可以看出大一学生确实还没有多少经验,对语法、数据结构、算法等还理解的不是很深,大二的学生基本上把握了教学大纲要求,对语法掌握的较好,但对独立开发涉及的算法还有待加强;同时也反映了我校c语言课程的教学水平及学生的学习效果在参赛的兄弟院校中居上游水平。几点建议

结合多年C程序开发经验及近年C语言教学情况,对如何提高高职高专学生C程序设计能力提出以下几点建议:

3.1 整合教材,精选内容

现有的教材内容和安排,有许多内容是值得调整、探讨的。需认真钻研教材,对教材进行优化设计。应尽早的把C语言的语句、语法及C程序的全貌告诉学生,让学生能尽早的全面了解C程序、进行C程序设计,然后再在此基础上进行各种类型项目的实训练习,真正的练好编程技能,而不是一直都在学新的知识点、验证新知识点。同时在教学过程中必须对授课内容做出适当的整合,例如,针对高职学生的数学知识基础弱,将教材中涉及到的复杂的数学知识类例题进行更换,避免因数学方面的问题形成教学障碍,另外在具体的实例教学中,尽可能的把与C语言语句、语法无关的英文字符用中文表示,减少英语差的学生的误解,加快学生对C语言语句、语法的理解和掌握。

3.2 重视算法编程思想,培养逻辑思维和创造性思维[5-6]

算法是程序设计的灵魂,而编程语言只是实现的具体形式。这次竞赛中就体现了对算法和逻辑设计方面要求较高,对创造性地解决问题要求较高。因此,在教学中,要重视算法设计,培养学生以算法为中心的思维模式。将语法知识尽可能多地结合示例进行实例教学,解决实际问题,让学生互动参与教学过程。

在教学过程中始终贯穿算法分析的思想,加强对算法的描述,让学生在整个教学过程中逐步养成严密的逻辑思维和创造性思维,从而提高程序设计能力。

3.3 重视程序项目设计,培养实际应用能力

进行理论实训一体化教学,在课堂安排上遵循“讲原理-举例子-练操作”的过程,把理论与实践相结合,学生边学边练,人人动手,人人参与,当堂课程内容当堂消化吸收,保证人人掌握,人人过关。在每个章节之后,设置贴近应用实际的巩固性程序项目专堂实训,把学过的各个章节的知识点有机地联系在一起,巩固并提高前面的知识,真正做到学用结合,达到提高应用编程能力的目的。

3.4 要求学生课堂全程互动

动手、动脑、动口;讲基础理论知识时,要求学生听讲解、记重点、勾要点;举例子时,要求学生听分析、抄代码、写注释;练操作时,要求学生不懂就要问,同时对练习效果进行排名次考核,促使学生进行竞争,激发学习斗志。

3.5 强调课堂技能学习与社会技能认证、比赛相结合要求学生参加国家或者省级C语言二级考试、软件设计师认证考试及全国性竞赛等。通过技能认证、各级竞赛来检验学生学习效果,同时也让学生明白社会、企业和公司认同的学习程度,让学生明确学习目标,从另一个方面促使学生保持学习动力。

同时在政策上提供支持,对获得高级别大赛奖项的学生,给予学生创新学分――可以冲抵其他非专业核心课程的学分,同时也作为申请提前毕业的依据之一。结束语

C 语言是高职院校计算机专业必修专业基础课,也一直是让老师和学生头疼的一门课,需要在学习基本语法的同时注重算法设计思想及编程能力的培养。

在教学中需结合实际的教学实践情况不断的发现问题、分析问题,积极探索改进教学方法,激发学生的学习兴趣和求知欲,引导学生运用所学知识去分析、解决实际应用问题,培养学生独立分析设计程序的能力。

参考文献:

[1] 全国软件专业人才设计与开发大赛组委会.2011全国软件大赛选拔赛答题情况总结简报.2011.[2] 陈露军, 张娜, 任磊.C语言教学方法探讨[J].大众科技, 2011(140):1.[3] 冯博琴.精讲多练C语言[M].西安:西安交大出版社,1997.[4] 黄取治.提高C语言教学质量的几点建议[J].海峡科学, 2009(8).[5] 夏侯?S, 万丽华.高职C语言教学探讨[J].福建电脑, 2009(11).[6] 谭浩强.C程序设计[M].北京.清华大学出版社, 2004.1.

2.学生成绩管理系统毕业论文C语言 篇二

1 管理系统功能模块设计

设计了一款适合高校使用的C/S模式的学生成绩管理系统, 该管理系统的特点是, 在数据库中将课程信息按照院系和专业分类, 在界面中输入学生所属专业的名称, 用户界面就会显示该专业的课程清单, 管理员只需按照学生选修的课程在课程清单中选择课程名字, 就会在用户界面的另一个区域显示学生所修课程清单, 即可输入每门课程的成绩, 这样做的好处是减轻了管理员的工作量, 因为一个班的学生所修课程基本相同, 将所修课程归纳在一起, 可省去管理员输入课程名称的工作, 同时降低了错误发生率。根据以上分析, 设计的功能模块如图1所示。

(1) 院系信息管理模块。这个模块主要用来添加、删除、更新、查询院系名称和编号。

(2) 专业信息管理模块。这个模块主要用来添加、删除、更新、查询专业名称和编号, 并将每个专业关联到对应的学院中。

(3) 课程信息管理模块。主要用来输入存储课程名称和编号, 并将课程名称按照专业归纳好。

(4) 学生信息管理模块。主要用来存储学生的基本信息和课程成绩信息。

2 用户界面设计

按照用户需求和功能模块设计来设计用户界面, 可以满足系统的要求。采用Java语言编写界面程序, 主窗口如图2所示。

主界面由Java Swing的组件和事件构成, 用Border Layout[3]布局将界面分为上、中、下3部分, 分别容纳上述3个功能区, 使用Boder类将这3个功能区的物理位置分隔开。在第一功能区内, 使用Grid Bag Constraints[4]布局将JLable组件和JText Field组件平均分布在各行各列, 随着窗口大小的变化, 这些组件的相对位置不变。第二功能区进一步利用Border Layout布局, 分成Center部分和East部分, Center部分是JTable组件, 该组件的表头由JTable的表头拆分和合并得到, 是整个主界面编写代码最难的部分。East部分是一个删除按钮, 可以删除学生的一门或多门课程。第三功能类似于第二功能区, 利用Border Layout布局分成Center和East部分, Center部分是JTable组件, East部分盛放的是一个选课按钮。

院系信息模块的管理窗口如图3 (a) 所示, 点击主界面中菜单栏的系统→院系, 就会弹出“院系管理”窗体, 输入院系的中英文名称, 点击添加按钮, 就会将院系名称和编号保存在数据库中, 完成院系信息的添加。选中文本区域的院系名称, 点击删除按钮, 就会将院系名称从数据库中删除, 完成院系信息的删除。选中文本区域的院系名称, 点击重置按钮, 就可以在编辑区域的文本框中修改院系名称和显示顺序, 完成院系信息的更新。

专业管理模块的设计和院系管理模块基本相同, 如图3 (b) 所示。课程信息模块的管理窗口如图3 (c) , 点击菜单栏的系统→课程, 弹出“课程管理”窗体, 在窗体的左边区域选择院系和专业, 然后输入课程的中文名称和英文名称, 就点击添加按钮, 完成专业课程信息的添加。在文本区选择课程名称, 然后点击删除按钮, 就可以完成专业课程信息的删除。

3 数据库设计

数据库使用My SQL数据库[5], 一共设计了6张表, 分别是学生表、院系表、专业表、课程表、专业课程表、分数表, 它们之间的关系如图4所示。

4 结束语

系统设计的主要工作就是用户界面的设计和数据库的设计, 以及通过用户界面访问数据库代码的编写。最后将此管理系统的每个功能进行了都验证, 基本达到了预期的效果。

摘要:以Java语言和MySQL数据库为基础, 在Eclipse工具上开发了一款适合高校使用的学生成绩管理系统。该管理系统的主要功能是管理学生信息, 包括管理学生的基本信息, 以及管理学生每学期所修课程的成绩, 实现学生信息的录入、更新、删除、查询、打印等功能。系统具有界面美观、操作方便、数据库存储量大等特点。

关键词:学生成绩管理系统,Java,MySQL

参考文献

[1]李舒, 陈丽君.高校学生成绩管理系统的设计与实现[J].辽宁大学学报:自然科学版, 2006, 3 (3) :283-285.

[2]李钟尉, 周小彤, 陈丹丹, 等.Java从入门到精通[M].2版.北京:清华大学出版社, 2010.

[3]王鹏, 何昀峰.Java Swing图形界面开发与案例详解[M].北京:清华大学出版社, 2008.

[4]达尔文.Java经典实例[M].张丽荣, 张晓坤, 译.北京:中国电力出版社, 2009.

[5]钱雪忠, 王燕玲, 张平.MySQL数据库技术与实验指导[M].北京:清华大学出版社, 2012.

[6]杨璐, 李隐峰, 闫蕾.基于Web电子作业提交系统设计[J].电子科技, 2012, 25 (7) :53, 54, 57.

3.职业技校学生的C语言教学探究 篇三

关键词:C语言程序 教学方法 职业技校学生

时代的飞速发展促使我国科技力量不断同步提升。计算机技术的普及及向其他学科的快速渗透让计算机知识的重要性日益凸显。职业技校的计算机专业学生将来想要有很好的就业渠道和就业选择,就必须对计算机工作原理有正确的理解,同时需具备熟练操作和使用的能力。

C语言程序设计作为计算机专业课程中的基础内容,可以说是一名计算机从业者的必备基本技能,属于进行计算机软件开发所用的入门语言,为后续的其他计算机专业课程的学习打下坚实基础,将计算机解决实际问题由可能变成了现实。

经过该课程的多年教学,笔者发现虽然C语言属于概念简单、类型丰富、表达能力强的短小精悍型计算机程序设计语言,但因为它的灵活性和多样性,学生掌握的情况皆不太理想,当然这和学生自身情况也有密不可分的关系。如何将这门基础课程讲好,让学生在学习的过程中主动提高自学能力和应用能力,让枯燥的理论知识变得实用好理解,下面就谈谈笔者的一些感悟与探究。

一、实际教学中存在的问题

1.学生的计算机水平参差不齐

职业技校学生的招生范围比较广泛,对于计算机的掌握水平也是参差不齐,有的学生甚至都没有接触过计算机。此外,部分学生的数学功底薄弱,逻辑分析能力不强,在学习的过程中又缺乏积极性和主动性。这给后续的教学带来了很大的困难。

巨大的水平差异使得在教学过程中,有点基础的学生满足于一知半解,掌握了书本上的基本概念或是常见例题就自我满足,学习的内容不踏实稳固,独立解题时就会错误百出;而基础较差的学生跟不上普通教学进度,日积月累问题增多,丧失了学习的信心,失去了学习热情。

2.教师的课堂教学方式单一

课堂教学是目前主要的教学手段,通过增加了多媒体演示等方式来帮助学生更快更好地掌握C语言的实际应用,但若仅仅依靠课堂例题的讲解和示范操作,忽视基础语法等知识点的重要性,同样会出现很多问题。对于很多刚刚接触编程语言的学生来讲,最大的问题就是觉得入门难,上课按照老师的讲解依样画葫芦可以听懂学会,但是课后一旦遇到新的程序就又不理解程序的实际功能了,如果要用程序来实际解决问题就更加有难度,根本不知道如何下手也没有具体的思路,从而产生了畏惧感。

如若过重地强调语法细节,大量在课堂讲解基础理论知识,甚至以计算机考级真题和模拟题作为讲解和练习的重点,又会使得课程的实用性大大降低,学生也会感觉到枯燥无味,丧失学习兴趣。长此以往,学生们仅仅注重了语法的学习,没有真正领悟程序语言设计的基本思想和方法,更不可能独立编写出有实用价值的程序。

3.上机实践的局限性

作为一门计算机课程,C语言课程的学习必不可少的就是学生上机操作训练。该过程既需要学生掌握概念,又需要动手操作,还需要调试运行出结果。但目前学生在实际上机时,往往对布置的任务敷衍了事,有的甚至直接抄袭其他学生的程序。同时,上机操作的指导老师往往只有一位,而学生编写程序的方法却不会相同,于是出现的问题既有共性的也有个性的。这样就导致不能及时解答每位学生的问题,使部分学生的程序不能继续调试,白白浪费课堂上宝贵的上机实践时间。

二、问题解决方案探究

1.激发和培养学生的学习兴趣

任何学科的学习与学生的学习兴趣是息息相关的,C语言的学习也不例外。针对目前职业技校学生没有过多接触过计算机语言,其他基础知识比较欠缺,本课程的理论知识枯燥深奥的特点,不仅仅要采取多媒体演示的方案进行教学,还要穿插一些既具有趣味性又具有实用性的程序进行讲解展示,例如“猴子吃桃”“鸡兔同笼”“水仙花数”等问题,吸引学生的注意力,通过简单模仿和后期深入练习,体验到编程后的成就感,促使学生激发起自身学习的动力。

2.合理设置教学目标,调整教学方式

教师在课前要对学生进行充分的熟悉和了解,针对学生的实际情况和教学大纲的要求,合理设置教学目标,调整教学方式。

在实际教学中笔者发现,学生对于基本的概念理解记忆往往没有在实际应用中发现问题后强调概念的重要性效果好。于是在平时的课堂教学中,笔者往往弱化基本格式的死记硬背,强化各种形式的实际应用,选择性地挑选例题讲解,将原本晦涩难懂的语法知识通过例题引出,让学生更快地掌握程序编写的实际应用,培养解题的正确思维模式,让教学效果变得既有广度又有深度。

学生在实际解题操作时,特别是遇到条件语句、循环语句和数组这部分有难度的内容时,容易产生畏难情绪。这就要求教师合理设置教学目标,设置一些难度适宜的分解目标,深入浅出,缩小问题台阶,让学生有能力逐步解决问题,激发学生自己动脑筋想方法,从而达到掌握教学重难点的要求。要知道学校中编程语言的学习只是一个基础,学好C语言是程序设计的一个良好开端,切忌设计好高骛远的目标,让学生永远失去了继续主动学习的热情。

教学过程中,不光采用多媒体演示的方法,还可以采用其他多种手段促进学生对内容理解。例如在讲解交换两个数的位置的教学过程中,笔者引入了现场模拟,课堂上携带了一杯可乐、一杯雪碧和一个空杯,让同学现场表演,要交换就必须将其中一种饮料腾入到另一个空杯中,即需要增加的另一个变量,这样另一种饮料才能换到前面的饮料杯中,然后腾出来的饮料倒入另一个饮料的杯子,从而实现了交换操作。在教学中引入了现场模拟,使学生更容易对这些抽象的内容加深理解,更重要的是碰到类似的问题他们会触类旁通,从而慢慢培养出编程的兴趣。

3.教学形式多样,注重团队精神

由于职业院校学生的基础薄弱,学习自制力较差,上课易走神分心,甚至有的会开小差,利用上机实践的机会玩电脑游戏,大大影响了课堂的教学效果。学生的学习能力也有高低,要完成相同的学习任务就会出现时间和掌握程度上的差异。

在实际教学中,笔者会根据各个学生不同的情况进行分组,让每组学生的综合水平基本持平,将能力较强的学生设为组长,通过任务布置和团队分工的合理安排,让每个学生都在课堂上积极行动起来,并且在相互讨论和分析优劣利弊中取长补短,起到了提优补差的效果,培养了学生的团队协作能力,这在今后计算机编程的工作中也是十分重要的能力。

4.改革考核方式,优化评价机制

C语言的学习内容和其他课程有些异同,不能片面强调考试试卷答题的正确率。在平时教学中,笔者以考核为手段,重在激励和鼓舞学生将知识内容掌握牢固。平时的每次上机实践都是一次考核,配套的实验报告中必须要包含流程图、调试过程和问题分析,在规定时间内完成后根据质量评分,计入最后的学期成绩评分,这样使每位学生对每次上机实践课程都非常重视,最大限度地激励学生的学习潜能。

C语言的教学重点是培养学生分析问题与解决问题的能力,而这种能力的培养是与学生的刻苦学习分不开的。如何通过这门课的教学来提高职业技校学生分析问题、解决问题的能力和编程的能力,让其具备更强的就业能力,还需要进行不断的探讨和实践。笔者会在今后的教学过程中细心观察,不断地去探索研究,不断丰富教学经验,找到一条能获得理想教学效果的途径,为中职教育事业贡献一份力量。

4.学生成绩管理系统毕业论文C语言 篇四

《C语言程序设计》

课程设计报告

部:

专业班级: 电子资讯工程(2)班

号:

070306210

名:

设计题目:

同学通讯录设计

起讫日期: 2008.6.16 至 2008.6.29 指导老师:

徐 化 祥

2008 年 6 月

宿迁学院课程设计报告

课程设计(论文)内容要求:

1.本课程设计的目的

(1)熟练掌握C语言的基本知识和技能;(2)掌握程序设计的一些经典算法和基本方法;(3)了解数组、指针和结构体的应用;

(4)利用所学的基本知识和技能,解决日常生活中经常面临的问题;(5)培养分析、解决问题的能力;提高学生的科技论文写作能力。

2.课程设计的任务及要求 1)课程设计题目:同学通讯录设计

2)基本要求:

(1)设计一个菜单将在实现的功能显示出来,并有选择提示;

(2)通讯簿应包含姓名、性别、电话号码、QQ号码、Email、班级、宿舍等基本信息;(3)能够查询全部成员清单;

(4)能够按号码或姓名查询某一个成员的信息;(5)能够增加、修改某一个成员的信息;

(6)要求有错误提示功能,例如性别只能输入F,M,输入错误提示重新输入。

3)创新要求:

(1)加入删除功能,实现对指定成员信息的删除操作;

(2)信息的输入输出可以用文件的存取和显示的方式,建立文件,直接存取默认檔或指定文件。

4)课程设计报告编写要求

(1)要按照课程设计模板的规格书写课程设计报告;(2)报告包括目录、正文、心得体会、参考文献等;

(3)课程设计论文用A4纸统一打印,装订按学校的统一要求完成。

5)参考数据:

(1)谭浩强.C程序设计(第三版).北京:清华大学出版社,2005.7(2)张强华.C语言程序设计.北京:人民邮电出版社,2001.8(3)http:///

6)提交内容:

6.18

209实验室

编程设计与调试

6.186.28

209实验室 提交所有数据

6.282345int i,j;/*下面的循环是对初始值的处理*/ for(i=0;i

strcpy(stu[i].sex,”“);stu[i].age=0;strcpy(stu[i].tel,”“);strcpy(stu[i].major,”“);strcpy(stu[i].classes,”“);strcpy(stu[i].room,”“);strcpy(stu[i].qq,”“);strcpy(stu[i].email,”“);strcpy(stu[i].others,”“);}

宿迁学院课程设计报告

int print1(){ int n;printf(”tttt<<通讯录>>n“);printf(”**************************************************************n“);printf(”t欢迎使用本通讯录应用程序,愿您从中找到所需要的信息。n“);printf(”制作人:冀鹏超 & 李长明t学号:070306210 & 070306211t班级:07电子信息(2)班n“);printf(”**************************************************************n“);printf(”n“);printf(”ttt1.浏览通讯簿n“);printf(”ttt2.输入同学信息n“);printf(”ttt3.查询同学信息n“);printf(”ttt4.删除同学信息n“);printf(”ttt5.增加同学信息n“);printf(”ttt6.修改同学信息n“);printf(”ttt7.退出通讯簿n“);printf(”n请输入您的选择(1-7):“);scanf(”%d“,&n);return n;} void menu(struct txl stu[]){ int i,j,flag=1;char str[15];for(;flag==1;){ switch(print1())

电话{

:case 1: for(i=0;stu[i].age!=0;i++){ printf(”姓名: %sn性别:%sn年龄:%dn%sn

%sn

宿

%sn

%snQQ号:%snEmail: %sn“,stu[i].name,stu[i].sex,stu[i].age,stu[i].tel,stu[i].classes,stu[i].room,stu[i].major,stu[i].qq,stu[i].email);

} printf(”其它信息:%sn“,stu[i].others);if(i==0)printf(”目前通讯簿为空,请先输入信息n“);

宿迁学院课程设计报告 ,stu[i].room,stu[i].major,stu[i].qq,stu[i].email);

}

if(i==N)printf(”t通讯簿中没有你要找的同学!n“);break;

printf(”其它信息:%sn“,stu[i].others);break;} case 4: printf(”现在你将进行删除操作!请输入要删除的同学的名字,按Enter结束.n“);

scanf(”%s“,str);for(i=0;i

if(strcmp(stu[i].name,str)==0){

printf(”姓名: %sn性别:%sn年班级:%sn

宿舍:%sn

专业:%snQQ龄:%dn电话:%sn号:%snEmail: %sn“,stu[i].name,stu[i].sex,stu[i].age,stu[i].tel,stu[i].classes,stu[i].room,stu[i].major,stu[i].qq,stu[i].email);

printf(”该同学将被删除n“);

}

宿迁学院课程设计报告

scanf(”%s“,stu[i].name);printf(”输入同学的性别: “);scanf(”%s“,stu[i].sex);printf(”输入同学的年龄: “);scanf(”%d“,stu[i].age);printf(”输入同学的电话: “);scanf(”%s“,stu[i].tel);printf(”输入同学的班级: “);scanf(”%s“,stu[i].classes);printf(”输入同学的宿舍: “);scanf(”%s“,stu[i].room);printf(”输入同学的专业: “);scanf(”%s“,stu[i].major);printf(”输入同学的QQ号: “);scanf(”%s“,stu[i].qq);printf(”输入同学的Email: “);scanf(”%s“,stu[i].email);printf(”输入同学的其它信息: “);scanf(”%s“,stu[i].others);} } break;case 7: flag=0;break;default: printf(”你的输入有错误,请重新输入!n");} } } void main(){ struct txl stu[N];

} init(stu);menu(stu);

宿迁学院课程设计报告

四、测试结果

1.通讯录菜单如下图所示:

2.输入“1”,进行“浏览通讯录操作:

3.输入“2”,进行“输入同学信息”的操作:

宿迁学院课程设计报告

8.输入“7”,进行“退出通讯簿”操作:

宿迁学院课程设计报告

五、设计心得

自从记事以来就听过了计算机这个高科技,现在终于实现了自己的一个小小愿望——成为了计算机系的一名学生,这学期我们学的C语言,以前就听过这个名字,打开书一看简直一窍不通,学好这门科简直就是一个挑战,课前课后都要把书啃一遍,要不然上课就跟不上,终于学期快结束了,我们有一个课程设计,在两个星期内,完成一个复杂的程序,我们的题目是做一个通讯簿。

通过为期一周的C课程设计实验课使我了解到了一个程序开发的过程,虽然规模不大,但为我以后的编程学习打下了基础。在编程的过程中,我体会到了学习编程的辛苦,为了一个算法的实现而思考,为了一个小小的编译错误而花时间去寻找,这需要很大的毅力和耐心,而且要有良好的思维,这才使得我完成这个任务,也使我感到一分喜悦,毕竟自己完成了一个有模有样的程序。于此,我也发现自己的一些不足,良好的编程习惯的养成,坚定的毅力和耐心仍是我要加强的,同别人的交流也是必须的,这样才能不断使我进步。在这次设计中,我遇到了很多困难,但我没有向困难低头,通过查询数据,虚心向同学、老师请教,才一一得到了解决。我发现平时学的太少了,在今后我首先要把老师在课堂讲的弄懂,弄透,在此基础上利用课余时间多看课外书籍,拓宽知识面。在设计过程中,合作精神必不可少。单凭一个人的力量是不能完成的,毕竟一个人学的很有限。每个人掌握的不同。我相信:态度决定一切,只有努力才有收获。

总的来说,这次程序设计让我获益匪浅,对C语言也有了进一步的认识:C语言功能高、表达能力强、使用灵活方便、目标程序效率高。

C语言是在国内外广泛使用的一种计算机语言,我相信除了以上优点之外还有许多,希望能在以后的学习中有更深入的认识。

很感谢这次的课程设计,它使我更加深刻地体会到多看专业书的重要性,只有掌握了一定量的专业知识才能得心应手地解决诸多问题;另外,做任何事都要有耐心,不要一遇到困难就退缩;在学习和工作中要时刻谨记“团结”二字,它好比通向成功的铺路石,不可或缺。

人生的道路是曲折的,但正是因为曲折人生才光彩夺目,在人生的路上,总遇到重重困难,但正是因为困难我们才变的更坚强。今后的路还很长,面对困难,让我们用行动去俘虏它吧!

宿迁学院课程设计报告

六、参考文献

[1] 谭浩强.C++程序设计.北京:清华大学出版社,2004 [2] http:/// [4] http:///

[5] 刘振安.C程序设计课程设计.北京:机械工业出版社,2004 [6] 张强华.C语言程序设计.北京:人民邮电出版社,2001.8

5.学生成绩管理系统毕业论文C语言 篇五

毕业班的学生面临着进入高一级的学校——初中,毕业班的成绩直接关系到学生进入初中后的进一步学习。另外,毕业班的学生成绩进行全县排名,也体现着一个学校的教育教学水平在全县的排名情况。所以,做好毕业班的教育教学管理,最大限度的提高毕业班学生的学习成绩,对于毕业班学生、毕业班教师及一个学校来说,都是十分重要的。现将对于毕业班学生的成绩提高及教学中的一些困惑,谈谈我自己的一些看法:

一、提高毕业班成绩的措施:

我这两年连续送了两届毕业班,虽然没有担任考试科目,但对于毕业班的学生的一些情况还是比较了解,我认为毕业班的成绩提高应从以下方面入手:

1、加强学生管理

六年级的学生在小学属于高年级的学生,他们比其它年级的学生年龄要大,难免有一种“学长”心态。所以到了六年级后,学生的心态会发生一些变化,他们比其它年级学生更难于管理,也更容易违反纪律。针对六年级学生的特点,一定要严格要求,精细化管理,抓好学生纪律。教师要尽量多蹲班,及时进行辅导,了解学生的情况。

2、学校要重视

六年级的学习任务和管理任务比其它年级要重,学校要出台措施,为六年级教育教学成绩提高创造条件,以便六年级的学生能够全身心的投入到文化课程的学习中去。对于六年级的教师学校要有专门的评价和奖励机制,充分调动教师的积极性和主动性。

3、做好家长和学生的动员工作

六年级要做好学生的动员工作,通过班会等方式经常给学生加油,打气,做好学生的工作,使学生时刻绷紧学习的弦,创造出良好的学习气氛。

在学期开始,及时召开家长会,做好家长的工作,通过家长会,日常电话联系等方式,及时掌握学生的学习动态,在校教师管理,在家家长监督,做到对学生的无缝管理。

4、做好课程规划,科学安排教学进度

在进入六年级后,就应该提前对六年级一年的教学进度进行计划和安排,做到心中有数。如,什么时间讲完新课,什么时间开始复习,复习分几个阶段,每个阶段的重点工作是什么等等。

5、抓两头、促中间,避免两极分化

现在的评价方法是”平均分+及格率“,这就要求教师要做到避免学生产生两极分化,要抓两头,既让优等生能够吃得饱,中等生能够吃的好,又不能让学困生掉队,尽量提高及格率和平均分。

二、问题和困惑

1、高年级的学习风气和学生纪律应该如何抓好。

2、如何避免使学生发生两极分化,怎样提高学困生的学习成绩。

黄金峪小学

马旭辉

6.校级运动会管理系统c语言程序 篇六

#define SIZE 9 #define N

#define WM

void bsxm();

//比赛项目 void csxx();

//参赛学校 void ttzf();

//团体总分 void Information();void main();void menu();void printf_back();void saveathlete();void saveprogram();void saveschool();void savescore();void Search();

int i;FILE *fp1,*fp2,*fp3,*fp4;

struct athlete

//定义运动员信息 { char univ[5];char name[8];char prog[15];

char mingci[5];int score;} at[SIZE];

struct xuexiao

//定义学校信息 { char univ[5];char prog[15];int num_athlete;} xx[N];

struct program { char prog[5];int quming;

char ath1[5];char ath2[5];char univ1[5];char univ2[5];} pro[WM];

//定义项目信息

struct zongfen

//定义学校得分信息 { char univ[5];char prog1[5];char prog2[5];char prog3[5];int score1;int score2;int score3;int total_score;} zf[N];

void Information()//进入信息录入系统选择系统子函数 {

int n,w;

do

{

puts(“nnn”);

puts(“tt***^__^

Welcome to load 信息录入 system!

^__^***n”);

puts(“tt*************************MENU*************************n”);

puts(“tt******** 1.saveathlete

**************n”);//运动员姓名录入

puts(“tt******** 2.saveschool

**************n”);//运动员学校录入

puts(“tt******** 3.saveprogram()

**************n”);//参加项目录入

puts(“tt******** 4.back

**************n”);//退出

puts(“tt******************************************************n”);

printf(“Choic your number(1-4):[ ]bb”);

scanf(“%d”,&n);

if(n<1||n>4)

{

w=1;

printf(“nntt----------------------DATAERROR!----------------------nnn”);

getchar();

}

else w=0;

}

while(w==1);

switch(n)

{

case 1 : saveathlete();break;// 保存运动员信息子函数

case 2 : saveschool();break;//保存学校信息子函数

case 3 : saveprogram();break;//保存项目比赛信息子函数

case 4 : exit(0);

} }

void saveathlete(){ //保存运动员信息子函数

printf(“n请输入各项目获奖运动员的信息:”);

for(i=0;i

printf(“n请输入第%d个运动员的信息:n”,i+1);

printf(“姓名:”);

scanf(“%s”,at[i].name);

printf(“学校:”);

scanf(“%s”,at[i].univ);

printf(“参赛项目:”);

scanf(“%s”,at[i].prog);printf(“名次:”);scanf(“%s”,at[i].mingci);

printf(“得分:”);

scanf(“%d”,&at[i].score);

} fp1=fopen(“ath”,“w”);

for(i=0;i

printf(“File write error!n”);}

fclose(fp1);fp1=fopen(“ath”,“r”);

printf(“n现在各运动员的信息如下:nn”);

printf(“姓名

学校

项目

名次

得分n”);for(i=0;i

fread(&at[i],sizeof(struct athlete),1,fp1);

printf(“%-10s%-10s%-18s%-10s%dn”,at[i].name,at[i].univ,at[i].prog,at[i].mingci,at[i].score);} fclose(fp1);printf_back();}

void saveschool()//保存学校信息子函数 { printf(“n请输入各参赛学校的信息:”);

for(i=0;i

printf(“n请输入第%d个学校的信息:n”,i+1);

printf(“学校:”);

scanf(“%s”,xx[i].univ);

printf(“参赛的项目:”);

scanf(“%s”,xx[i].prog);

printf(“参赛者数:”);

scanf(“%d”,&xx[i].num_athlete);}

fp3=fopen(“xxiao”,“w”);for(i=0;i

if(fwrite(&xx[i],sizeof(struct xuexiao),1,fp3)!=1)

printf(“File write error!n”);} fclose(fp3);

printf_back();}

void saveprogram()//保存项目比赛信息子函数 { printf(“n请输入关于比赛项目的信息:”);

for(i=0;i

printf(“n请输入第%d项比赛的信息:n”,i+1);printf(“项目:”);scanf(“%s”,pro[i].prog);printf(“取分情况:”);scanf(“%d”,&pro[i].quming);printf(“参赛者1:”);scanf(“%s”,pro[i].ath1);printf(“所属学校:”);scanf(“%s”,pro[i].univ1);printf(“参赛者2:”);scanf(“%s”,pro[i].ath2);

printf(“所属学校:”);

scanf(“%s”,pro[i].univ2);}

fp4=fopen(“pr”,“w”);for(i=0;i

if(fwrite(&pro[i],sizeof(struct program),1,fp4)!=1)

printf(“File write error!n”);} fclose(fp4);

printf_back();}

void savescore()//保存学校得分情况子函数 { printf(“N-参赛学校总数,M-男子竞赛项目数,W-女子竞赛项目数。n”);printf(“W.100-女子一百米比赛,M.100-男子一百米,M.200-男子两百米。n”);printf(“n各项名次得分权值如下:n”);printf(“取前三名:第一名5分

第二名3分

第三名2分n”);

printf(“n请输入各学校的得分情况:”);

for(i=0;i

printf(“n请输入第%d个学校的得分情况:n”,i+1);

printf(“学校:”);scanf(“%s”,zf[i].univ);

printf(“参赛项目1:”);scanf(“%s”,zf[i].prog1);printf(“得分:”);scanf(“%d”,&zf[i].score1);printf(“参赛项目2:”);scanf(“%s”,zf[i].prog2);printf(“得分:”);scanf(“%d”,&zf[i].score2);

printf(“参赛项目3:”);scanf(“%s”,zf[i].prog3);

printf(“得分:”);

scanf(“%d”,&zf[i].score3);

zf[i].total_score=zf[i].score1+zf[i].score2+zf[i].score3;}

fp2=fopen(“zfen”,“w”);for(i=0;i

if(fwrite(&zf[i],sizeof(struct zongfen),1,fp2)!=1)

printf(“File write error!n”);} fclose(fp2);

printf_back();}

void Search()//进入查询系统子函数 { int n,w2;do

{

puts(“tt***^__^

Welcome to load search system!

^__^***n”);

puts(“tt*************************MENU*************************n”);

puts(“tt******** 1.search ttzf **************n”);//查看团体总分

puts(“tt******** 2.search csxx **************n”);//查看参赛学校信息!

puts(“tt******** 3.search bsxm **************n”);//查看比赛项目信息!

puts(“tt******** 4.Exit

**************n”);//退出

puts(“tt***************************************n”);

printf(“Choose your number(1-4):[ ]bb”);

scanf(“%d”,&n);

if(n<1||n>4)

{

w2=1;

printf(“nntt----------------------DATAERROR!----------------------nnn”);

getchar();

}

else w2=0;} while(w2==1);switch(n){ case 1: ttzf();break;case 2: csxx();break;case 3: bsxm();break;case 4: exit(0);break;default: printf(“未进行任何操作!”);}

}

void ttzf()//查看学校团体总分子函数 { fp2=fopen(“zfen”,“r”);

printf(“n各学校的团体总分情况如下:nn”);

printf(“学校

参赛项目

总分n”);for(i=0;i

fread(&zf[i],sizeof(struct zongfen),1,fp2);

printf(“%-8s%s,%s,%-12s%-12dn”,zf[i].univ,zf[i].prog1,zf[i].prog2,zf[i].prog3,zf[i].total_score);} fclose(fp2);printf_back();}

void csxx()//查看参赛学校信息子函数 {

fp3=fopen(“xxiao”,“r”);

printf(“n各参赛学校的情况如下:nn”);

printf(“学校

参赛项目

参赛者数n”);for(i=0;i

fread(&xx[i],sizeof(struct xuexiao),1,fp3);

printf(“%-8s%-20s%-12dn”,xx[i].univ,xx[i].prog,xx[i].num_athlete);} fclose(fp3);

printf_back();}

void bsxm()//查看比赛项目子函数 {

fp4=fopen(“pr”,“r”);

printf(“n各比赛项目的信息如下:nn”);

printf(“项目

取分情况

参赛者1 所属学校

参赛者2 所属学校n”);for(i=0;i

fread(&pro[i],sizeof(struct program),1,fp4);

printf(“%-12s%-10d%-10s%-12s%-10s%-12sn”,pro[i].prog,pro[i].quming,pro[i].ath1,pro[i].univ1,pro[i].ath2,pro[i].univ2);} fclose(fp4);printf_back();}

void main(){ menu();

}

void menu()//主菜单程序 { int n,w1;do {

puts(“tt***^__^

Welcome to load sports system!

^__^***n”);

puts(“tt*************************MENU*************************n”);

puts(“tt******** 1.Enter the information

**************n”);//进入信息录入

puts(“tt******** 2.Score

**************n”);//进入比赛结果录入

puts(“tt******** 3.Search

**************n”);//进入查询功能

puts(“tt******** 4.Exit

**************n”);//退出

puts(“tt******************************************************n”);

printf(“Choose your number(1-4):[ ]bb”);

scanf(“%d”,&n);

if(n<1||n>4)

{

w1=1;

printf(“nntt----------------------DATAERROR!----------------------nnn”);

getchar();

}

else w1=0;} while(w1==1);

switch(n)

{

case 1:Information();break;//输入信息

case 2:savescore();break;//比赛结果录入

case 3:Search();break;//查询模块

case 4:exit(0);

}

}

//公共函数

7.如何培养学生对C语言的学习兴趣 篇七

一、上好第一堂课是前提更是关键

1. 首先让学生明确学习目的

C语言作为计算机及相关专业的专业基础课, 教师第一堂课主要应向学生讲明白为什么要学习这门课, 这门课的主要作用是什么, 介绍C语言在计算机语言中的重要地位, 同时它也是后面的专业课如C++、C#的基础, 而且它已成为当今世界最有影响的程序设计语言之一。让学生知道只有学好了这门课, 后续的专业课才能学好。

2. 其次导入时应当列举有趣的实例来吸引学生

教师在讲授每一节课以前, 必须清楚、明白这堂课的目的要求, 通过形象生动地操作或有趣的实例或是激趣的提问, 诱发学生的求知欲;也可根据内容讲明该教材在程序设计当中的作用和意义, 以及它在知识体系中的地位, 从而引起学生对知识的足够重视, 激发学习的动机。例如, 在讲授《函数的递归调用》时, 由于大多的学生对游戏非常感兴趣, 所以可以从游戏进行切入, 首先对学生讲讲汉诺塔的传说:传说在古印度的寺庙里有着一个跟循环有关的游戏, 当游戏结束的时候也就意味着世界末日的到来。说到这里, 学生肯定会好奇, 纷纷都想知道这是个怎样的游戏。等细致地给学生讲解该问题, 让学生知道了汉诺塔的问题后, 再慢慢给他们讲述一下这个问题的解决方法———函数的递归调用。其实C语言中也有很多有趣的实例。比如在讲循环语句时, 可以打印一张九九乘法表等。值得注意的是, 在举例子的过程当中, 不但要举正面的例子, 而且要特别注意举反例。

3. 另外, 一个程序例材用后不要抛弃, 可以举一反三地变化使用, 也可以一下改一点, 看看程序会如何变化, 从而加深学生对程序中各项参数的透彻理解

例如讲函数这一章节, 在对内部函数和外部函数进行区别时, 可以对同一程序变量的不同位置的存放来体现二者的不同。

二、良好的课堂教学也将起着举足轻重的作用

1. 学生是教育教学的主体, 在教学过程中, 要让学生成为教学的主体

教师在教学中, 要积极调动学生学习的主动性和能动性, 让学生勤于思考、善于思考, 而不是一味被动地去接受老师讲授的内容。在教学中, 教师要善于给学生制造小困难, 从而让学生体验到克服困难获取成功的乐趣, 这也是保持学生学习兴趣的必要条件。尤其是在学生上机操作的过程中, 当学生遇到问题后, 教师不要立刻去解决, 可以根据情况进行一下小的提醒, 让学生不断地去“试错”, 只有这样学生才能在学习中真正有所得有所获。

教师要能正确地评价学生, 适当地鼓励和表扬学生。对于学习较差和信心不足的学生, 我们要给予指正, 同时要挖掘他们学习中的积极因素, 及时表扬和鼓励他们再接再厉;而对于学习较好的和信心较足的学生, 我们要给予适当的表扬, 同时提出更多的要求, 这样可以激发学生的上进心。尤其是对学生在编程中取得的每一次进步, 不管它是大还是小, 教师都不应该吝啬自己的表扬。久而久之, 学生的学习兴趣就会越来越浓。

2. 加强实践环节

《编程语言基础——C语言》是一门实践性较强的课程, 学生在学习C语言程序设计的过程中不仅要掌握C语言的基本语法、规则, 还要动手编程、上机调试和运行。在C语言教学过程中我发现, 教师每讲完一个例子或几个例子, 都要让学生自主上机调试。在上机调试的过程中, 学生自己去查找检验知识的正确度, 并加以改进, 能让学生学以致用, 掌握起来也比较快。不仅如此, 在调试的过程中, 学生也会体验到成功的乐趣。

当然除了上述的例子之外, 教师也要精挑细选一些习题, 这些习题既要有基本的、较简单的题目, 又要有一些具有挑战性的新颖有趣的题目。在这里, 教师也可以根据不同的学生的学习状况来尝试分级教学的方法。学生的水平不同、进度不同, 教师布置的作业和上机题目也可以不同。也可以将3~5位同学分为一组, 让他们互相学习、大胆讨论, 去发现问题和解决问题。

实践证明, 学生学习的主动性和兴趣都有很大的提高。

3. 突出重点和难点

因C语言的课时十分有限, 而C语言所涉及到的概念比较复杂, 规则繁多, 因此教师在教学过程中应该结合学生学习实际和以往的教学经验, 对课程内容进行科学透彻的分析, 从而确立课程学习上的重点、难点。要突出重点、解决难点, 就需要教师可以根据不同的内容采取不同的教学方法, 通过特定的题目和练习, 使学生掌握这些知识点。

尤其像循环语句、函数调用、指针等这些相对重要且难理解的内容, 教师应突出其对整个课程体系内容掌握的重要性, 以重点内容为突破口, 带动相关知识点的掌握。同时要运用现代教学手段, 借助于演示、实例分析等功能, 简化教学过程, 突出重点、突破难点, 达到化繁为简、化难为易、化抽象为具体的目的。这样, 能避免学生因无法深入知难而退、甚至丧失学习信心的现象, 从而唤起学生学习的兴趣, 提高学生创新的激情。

4. 强调教师的言传身教

在C语言教学过程中, 教师的言传身教对学生的影响很大。教师的言传身教不仅影响学生以后的编程习惯, 还影响到学生对知识点的掌握。譬如:在C语言学习过程中++、--等运算符的学习是一个难点, 那么教师在编写程序的时候就要有意识地在不同场合长期使用++、--等运算符。类似的例子像循环语句中的条件表达式while (1) 、while (!x) 等等。这样日积月累, 长时间接触到类似的表达式, 学生对这些知识点的印象就会更加深刻, 从而达到真正的驾驭知识的目的。

三、适当地布置作业、批改作业、讲评作业

要想真正达到“会用”, 使学生所学习的知识形成技巧, 转化为分析问题和解决问题的能力, 还必须通过复习、完成作业等实践活动才能实现。而教师授课后的练习、复习、巩固在整个学习过程中也占着一个重要位置。因此一个好的教师, 除了备好课、讲好课外, 还要认真布置作业、批改作业、讲评作业。

教师布置作业的内容是丰富的, 布置作业的方法也是多样的。但不管内容丰富还是方法多样, 都必须有依据, 那就是教科书和教学大纲。而且要注重理论联系实践的能力。要紧扣教学要求, 目的明确, 有针对性。要精选内容, 练习形式要多样, 练习量要适当。有条件的教师, 要尽可能在当堂课上进行作业的批改。在课堂上进行优秀作业的讲评, 一方面能鼓励做得好的学生, 同时对其他学生也能起到很好的激励作用。

总之, C语言教学过程是一个不断精益求精的过程, 每一位教师, 只有把提高学生的学习兴趣放在首位, 不断在教学过程中进行摸索, 才会取得较好的教学效果。而学生一旦对C语言产生了兴趣, 相信他以后的学习一定会事半功倍的。

参考文献

[1]谭浩强.C程序设计 (第三版) [M].北京:清华大学出版社, 2005.

注:本文为网友上传,旨在传播知识,不代表本站观点,与本站立场无关。若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:iwenmi@163.com

上一篇:开学了作文500字初中下一篇:3-政研年会欢迎辞

付费复制
学术范例网10年专业运营,值得您的信赖

限时特价:7.99元/篇

原价:20元
微信支付
已付款请点这里联系客服
欢迎使用微信支付
扫一扫微信支付
微信支付:
支付成功
已获得文章复制权限
确定
常见问题