面向对象程序设计课程设计报告

上传人:M****1 文档编号:555017649 上传时间:2022-09-10 格式:DOCX 页数:19 大小:161.38KB
返回 下载 相关 举报
面向对象程序设计课程设计报告_第1页
第1页 / 共19页
面向对象程序设计课程设计报告_第2页
第2页 / 共19页
面向对象程序设计课程设计报告_第3页
第3页 / 共19页
面向对象程序设计课程设计报告_第4页
第4页 / 共19页
面向对象程序设计课程设计报告_第5页
第5页 / 共19页
点击查看更多>>
资源描述

《面向对象程序设计课程设计报告》由会员分享,可在线阅读,更多相关《面向对象程序设计课程设计报告(19页珍藏版)》请在金锄头文库上搜索。

1、中国矿业大学银川学院面向对象程序设计课程设计报告(2011/2012学年第二学期)题目名称学生考勤管理程序系部专业班级学生学号完成时间指导老师引言1.20世纪末,随着计算机科学的发展,数据库技术在Internet中的应用越 来越广泛,为广大网络用户提供了更加周到和人性化的服务。学生考勤管理程序 是信息管理系统的一个子系统,一个基于单机版的系统。因为随着计算机技术的 不断进步与发展,计算机已经深入到人们日常生活的每个角落,例如:政府部门, 企事业单位,学校等等。该系统开发功能主要包括:管理员可以通过计算机设置 学生考勤管理程序,打印供学校及个人使用。2. 学风是高等学校办学思想、人才培养质量和管

2、理水平的重要标志,也是学 生思想品质、学习态度和综合素质的重要体现,是学生思想政治教育和校园精神 文明建设及高校校风的重要组成部分。良好的学风对于提高教学水平和人才培养 质量,促进学生的全面发展和健康成长有着十分重要的意义。学风建设是一个系 统工程,是大学理念和大学精神的重要体现。为构建我系学风建设的长效机制, 营造良好的学习氛围,创造良好的育人环境,提高教学质量及人才培养质量,促 进学校教育事业的发展,充分发挥自律会组织的功能,根据湖南农业大学学生 手册的相关规定以及本系的实际情况,特制定本学生考勤管理系统。3. 程序实践是本科生重要教学环节之一。通过程序实践,强化学生的计算机 应用技能,使

3、学生验证、巩固和充实所学的理论知识,加深对相关内容的理解, 拓宽知识面,培养学生的创新精神和实践能力。学生考勤管理程序是学校管理工 作中一个比较重要的任务,过多的学生考勤管理程序工作给学校管理人员带来了 很大麻烦的。虽然原始的记录方法在一定的程度上可以解决问题,可是现在计算 机已经走到了我们的生活,它的不足之处就显而易见了。学生考勤管理程序,是 一个对于学生考勤的管理系统,不仅大大减少了考勤管理人员的大量的工作,而 且还方便了班级和学校对学生出课率的查询,只要通计算机登入本系统就能及时 修改、更正学生的考勤信息,使信息真实、有效。这样节省了大量人力物力,节 省了宝贵的时间,大大提高了工作效率.

4、用C语言进行了该系统的编写。操作上力 争实现人性化、合理化,满足学校、老师、非计算机管理人员的使用和查看。目 录引言11. 课程设计目的和意义32. 详细设计42.1需求描述42.2功能描述42.2.1建立学生缺课记录子模块42.2.2修改学生缺课记录子模块52.2.3修改学生缺课记录子模块72.2.4查看单科旷课记录子模块72.2.5查看学生旷课记录子模块92.2.6载入学生旷课记录子模块102.2.7储存学生旷课记录子模快112.3程序运行说明113. 课程设计总结 163.1编程日志163.2测试报告164. 心得体会175. 参考文献181.课程设计目的和意义通过这次课程设计使学生达到

5、熟练掌握C+语言的基本知识和技能,基本掌 握面向对象程序设计的基本思路和方法,能够利用所学的知识和技能,解决简单 的面向对象程序设计问题。“学生考勤管理系统”要求实现-“学生考勤管理 程序”记录学生的缺课情况,它包括:缺课日期、第几节课、课程名称、学生姓 名、缺课类型(迟到、早退、请假及旷课)。1. 录入学生的缺课记录;2. 修改某个学生的缺课记录;3. 查询某个学生的缺课情况;4. 统计某段时间内,某门课旷课学生姓名及旷课次数,按旷课次数 由多到少排序;5. 统计某段时间内,有学生旷课的课程及旷课人次,按旷课人次由 多到少排序。程序实践是本科生重要教学环节之一。通过程序实践,强化学生的计算机

6、应 用技能,使学生验证、巩固和充实所学的理论知识,加深对相关内容的理解, 拓宽知识面,培养学生的创新精神和实践能力学生考勤管理程序可以大大减缓学生考勤人员的工作量,方便了平时上课 学生的出勤率的管理。2.详细设计2.1需求描述根据分析整个系统主要划分为7个功能模块,分别执行要求中的功能。数据 管理中实现对学生的基本信息、课程的基本信息、学生缺课的查询、添加、删除 和修改,以及具体缺课缺课内容,是迟到、早退、请假、旷课。查询管理通过根 据学生姓名,课程姓名时间段儿等信息,查询单个学生的缺课记录,单科课的 旷课记录,单个学生的旷课记录。此程序是过程性语言设计的。运用多种条件语句,主体采用的是链表指

7、针。 系统的设计采用了数组语句、选择语句和循环语句,在需要处理大量同类数据时, 这样就使程序书写更加简洁。程序使用了布尔函数。选择语句多采用if多分支 选择结构与switch语句。首先计算switch表达式,然后在caes子句中寻找值 相等的常量表达式,并以此为入口符号,由此开始顺序执行。循环语句采用了 for语句等、do-while语句,for语句用于已知循环次数的循环结构,括号中的 三个量分别用来表示循环变量初值、循环终值和循环增量。do-while语句先循 环后判断,Break语句在switch语句中,保证多分支情况的正确执行,在循环 语句中,强制终止本层循环。保存和读取函数是典型的函数

8、功能,一个程序是由 若十个函数组成的,保存和读取函数是和其他函数互相调用的。2.2功能描述2.2.1建立学生缺课记录子模块要建立的学生人数,学生基本信息(包括缺课时间、学生姓名、课程名称、第几 节、迟到次数、早退次数、请假次数、旷课次数)可用creat()struct student *creat() int i,b;struct student *head,*p1,*p2;printf(-请输入要建立资料的学生人数:,scanf(%d”,&b);head=p2=NULL;p1=(struct student *)malloc(LEN);printf(【输入格式:缺课时间(空格)学生姓名(空格

9、)课程名称(空格)第几节(空格)迟 到次数(空格)早退次数(空格)请假次数(空格)旷课次数】n);printf(请输入第1名学生信息:);scanf(%ld%s%s%d%d%d%d%d”,&p1-time,p1-name,p1-lesson_name,&p1-lesson_ti me,&p1-chidao_num,&p1-zaotui_num,&p1-qingjia_num,&p1-kuangke_num);head=p1;p2=p1;student_num+;for(i=1;itime,p1-name,p1-lesson_name,&p1-lesson_ti me,&p1-chidao_nu

10、m,&p1-zaotui_num,&p1-qingjia_num,&p1-kuangke_num);p2-next=p1;p2=p1;student_num+;p2-next=NULL;return(head);2.2.2修改学生缺课记录子模块根据要修改的学生姓名以及科目名称找到相应的信息,再选择要修改的项目进行 单项修改struct student *xiugai(struct student *head)char xiugai_name50;char xiugai_xueke_name50;int k;printf(-请输入要修改的学生姓名与学科名称【格式:学生姓名(空格)学科名称】:”)

11、;scanf(%s%s”,xiugai_name,xiugai_xueke_name);struct student *p1,*p2;p2=(struct student *)malloc(LEN);p1=head;if(head=NULL)printf(没有学生信息n);return(head); while(strcmp(xiugai_name,p1-name)!=0&(p1-next!=NULL)&strcmp(xiugai_xueke_name,p1-lesson_name)!=0)p1=p1-next;if(strcmp(xiugai_name,p1-name)=0&strcmp(x

12、iugai_xueke_name,p1-lesson_name)=0)printf(”=n”);printf(1-修改缺课时间n);printf(2-修改学生姓名n);printf(3-修改课程名称n);printf(4-修改第几节缺课n);printf(5-修改迟到次数n);printf(6-修改早退次数n);printf(7-修改请假次数n);printf(8-修改旷课次数n);printf(”=n”);scanf(%d”,&k);switch(k)case 1:printf(请输入新的缺课时间”);scanf(%ld”,&p1-time);break;case 2:printf(请输入新

13、的学生姓名”); scanf(%s”,p1-name);break;case 3:printf(请输入新的课程名称”); scanf(%s”,p1-lesson_name); break;case 4:printf(请输入新的第几节缺课”);scanf(%d”,&p1-lesson_time); break;case 5:printf(-请输入新的迟到次数”); scanf(%d”,&p1-chidao_num); break;case 6:printf(请输入新的早退次数”); scanf(%d”,&p1-zaotui_num); break;case 7:printf(请输入新的请假次数)

14、;scanf(%d”,&p1-qingjia_num); break;case 8:printf(请输入新的旷课次数”);scanf(%d”,&p1-kuangke_num);break; return(head);2.2.3修改学生缺课记录子模块根据人名可以查出该学生的所有缺课记录void chaxun(struct student *head) ( int i;char chaxun_name50;printf(-请输入要查询的人名【若没有这个人则不显示】:”);scanf(%s”,chaxun_name);struct student *p;if(head=NULL)printf(联系人为空);p=head;for(i=0;iname)=0)printf(-缺课时间:ld学生姓名:s课程名称:s第d节迟到次数:d早 退 次 数:%d请 假 次 数 :%d旷 课 次数:dn”,p-time,p-name,p-lesson_name,p-lesson_time,p-chidao_n

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 解决方案

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号