C语言课程设计学生考勤系统12115.docx
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《C语言课程设计学生考勤系统12115.docx》由会员分享,可在线阅读,更多相关《C语言课程设计学生考勤系统12115.docx(42页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、C语言程序设计课程设计报报告设计题目:学生考勤勤系统设计计专 业微电电子科学与与工程班 级微电电131 学 生赵 杨 怡怡指导教师 年 学期设计任务:C语言课课程设计任任务书100题目:学生生考勤系统统设计功能:学生生考勤系统统应包含各各班学生的的全部信息息。每个学学生是一条条记录,包包括姓名、性性别、学号号、日期、节节次、出勤勤情况等信信息。本系系统可以模模拟考勤过过程、记录录考勤结果果,并能在在课程结束束后按照设设定的考勤勤评分标准准自动给出出每个学生生的考勤分分数。要求:1、用用C语言实实现程序设设计;2、利用结结构体进行行相关信息息处理;3、系统的的各个功能能模块要求求用函数的的形式实
2、现现;4、界面友友好(良好好的人机交交互),程程序加必要要的注释。平时成绩:验收答辩成成绩:设计报告成成绩:总评成绩:指导教师:一、总体设设计1程序的的总体设计计确定界面面,使用户户可选择操操作项目(录录入,修改改,查询,评评分)。录入功能能:使用结结构体,要要求用户输输入姓名、性性别、学号号、日期、节节次、当前前出勤情况况等信息,并并写入文件件。 修改功能能:使用户户输入学号号,姓名其其中一项可可以修改考考勤其信息息。对于修修改功能的的实现,是是先将所有有文件内容容读入到内内存中,然然后修改考考勤值,最最后再重新新覆盖写入入文件。查询模块块:使用字字符串比较较函数,利利用循环找找到对应结结构
3、体数组组元素,然然后输出需需要信息。对对于查询功功能的实现现,同修改改,是先将将所有文件件内容读入入到内存中中,然后查查找到其中中某项,最最后输出到到屏幕。评分模块块:系统根根据总的应应道考勤数数按照百分分制,求出出每个学生生的分数,并并输出到屏屏幕。2. 数据据结构学生信息用用结构体记记录,包括括姓名(字字符数组)、性性别(字符符型)、日日期(年月月日三个字字符数组)、节节次(整型型)、出情情况(整型型)。3. 函数数原型声明明 voiid maain() /主函数void inpuut(); /录入数数据函数void channge(); /修修改数据函函数void searrch();
4、/查询询数据函数数void evalluatee(); /计算算总评函数数二、详细设设计1.maiin( )函数void mainn()void inpuut(); /录入数数据函数void channge(); /修修改数据函函数void searrch(); /查询询数据函数数void evalluatee(); /计算算总评函数数 cchar itemm; ssysteem(ccolorr 34);printtf( n);printtf( n);printtf( 学 生生 考 勤 管 理理 系 统 n);printtf( n);printtf( BYY 朱胜佳佳 n);printtf(
5、n);printtf( n);printtf( n);printtf( 11.学生信信息及考勤勤情况录入入 n);printtf( n);printtf( 22.学生信信息及考勤勤情况修改改 n);printtf( n);printtf( 33.学生信信息及考勤勤情况查询询 n);printtf( n);printtf( 44.学生考考勤总评分分数查询 n);printtf( n);printtf( n); /用用户界面printtf(n);printtf( 请请选择您需需要的操作作n);scanff(%cc,&iitem); sswitcch(ittem) caase 1: inpuut()
6、;breaak; caase 2: channge();breeak; caase 3: searrch();breeak; caase 4: evalluatee();bbreakk; /实现功能能选择流程图:开 始1breakgoal()search()amend()record()432switch(item) switch(item)switch(item)输出界面结束2.inpput() 函数void inpuut()int ii,j=00,jx=1;printtf( *学 生 基 本 信 息 录 入*n);if(ffp=foopen(datte.txxt,w)=NUULL)prin
7、ttf(文文件打开失失败n); eexit(0);for(ii=0;jjx=11;i+) /输入信息息循环 ffor(;j=00;) /输输入确认循循环getchhar();printtf(请请输入第%d个学生生的姓名 ,i+1);gets(stui.nname);printtf(请请输入第%d个学生生的学号 ,i+1);gets(stui.nnumbeer);printtf(请请输入第%d个学生生的性别(男:m 女:f) ,ii+1);stuii.seex=geetchaar();printtf(请请输入第%d个学生生的生日(格式:年年 月 日日) ,i+1);scanff(%dd%d%dd
8、,&sstuii.yeear,&stui.mmonthh,&sttui.dayy); pprinttf(请请输入第%d个学生生的当前考考勤次数 ,i+1);scanff(%dd,&sstuii.kqq);printtf(您您输入的信信息为 姓姓名 %ss 学号 %s 性性别 %cc 生日 %d年%d月%dd日n 0 重重输 1 确认,stui.nname,stui.nnumbeer,sttui.sexx,stuui.yearr,stuui.montth,sttui.dayy);scanff(%dd,&jj); /输入确认认 jj=0; iif(fwwritee(&sttui,sizzeof(s
9、truuct sstudeent),1,fpp)!=11) prrintff(文件件写入错误误n); /写写入文件printtf( 是否继续续输入下一一个学生信信息 0 终止 1 继续续n);scanff(%dd,&jjx); /继续输入入选择fclosse(fpp); pprinttf(00 返回主主菜单nn);getchhar();a=gettcharr();getchhar();if(a=0) maain(); /返回回主菜单流程图:开始0=j打开文件1=jx0=ijx=1?Yj=0?Y输入i+1个学生信息生信息N输入j值选择是否确认写入文件i+1=i输入jx值选择是否继续结束3.cha
10、ange()函数void channge() iint ii=0,jj=0,ssway,t,x; cchar namee10,nummber10;printtf( *学 生 考 勤 修 改*n); iif(ffp=foopen(datte.txxt,r)=NUULL) /将文文件内容读读入内存printtf(文文件打开失失败n); eexit(0);for(ii=0;ffeof(fp)=0;ii+) freaad(&sstuii,siizeoff(strruct studdent),1,ffp); /读取文文件内容fclosse(fpp); /关闭文件件printtf(选选择查找方方式 1 按
11、照姓名名查找 2 按照照学号查找找);scanff(%dd,&ssway); /*按照姓名名查找开始始*/if(swway=1)printtf(请请输入需要要修改学生生的姓名 );/priintf(i=%d,ii);scanff(%ss,naame);for(jj=0;tt!=0;j+) tt=strrcmp(stuj.nname,namee);if(j=i) t=0;printtf(未未找到您所所查询的数数据,请重重新输入n);if(ji) /查查询成功printtf(您您查找的学学生信息如如下n 姓名 %s 学号号 %s 性别 %c 生日日 %d年年%d月%d日 当当前考勤次次数 %ddn
12、,stuj-1.namme,sttuj-1.nnumbeer,sttuj-1.ssex,sstujj-1.yearr,stuuj-11.moonth,stuj-1.dayy,stuuj-11.kqq); pprinttf(是是否修改该该生考勤信信息 00 否 1 是); /选择是否否修改考勤勤 sscanff(%dd,&xx); /输输入选择变变量值if(x=1)printtf(请请输入新的的考勤值 );scanff(%dd,&sstujj-1.kq); /输入新新的考勤值值 iif(ffp=foopen(datte.txxt,w)=NUULL) /以只写写方式打开开文件 priintf(文件
13、打打开失败n); exiit(0); ffor(jj=0;jji;jj+) if(ffwritte(&sstujj,siizeoff(strruct studdent),1,ffp)!=1) pprinttf(文文件写入错错误n); /写入文件件 ffclosse(fpp); /关闭文件件printtf(是是否继续修修改其他学学生考勤 0 否 1 是是);scanff(%dd,&xx);if(x=1) channge();/*按照照姓名查找找结束*/ /*按照学号号查找开始始*/if(swway=2)printtf(请请输入需要要修改学生生的学号 );/priintf(i=%d,ii);sca
14、nff(%ss,nuumberr);for(jj=0;tt!=0;j+) tt=strrcmp(stuj.nnumbeer,nuumberr);if(j=i) t=0;printtf(未未找到您所所查询的数数据,请重重新输入n);if(ji) /查查询成功printtf(您您查找的学学生信息如如下n 姓名 %s 学号号 %s 性别 %c 生日日 %d年年%d月%d日 当当前考勤次次数 %ddn,stuj-1.namme,sttuj-1.nnumbeer,sttuj-1.ssex,sstujj-1.yearr,stuuj-11.moonth,stuj-1.dayy,stuuj-11.kqq);
15、pprinttf(是是否修改该该生考勤信信息 00 否 1 是); /选择是否否修改考勤勤 sscanff(%dd,&xx); /输输入选择变变量值if(x=1)printtf(请请输入新的的考勤值 );scanff(%dd,&sstujj-1.kq); /输入新新的考勤值值 iif(ffp=foopen(datte.txxt,w)=NUULL) /以只写写方式打开开文件 priintf(文件打打开失败n); exiit(0); ffor(jj=0;jji;jj+) if(ffwritte(&sstujj,siizeoff(strruct studdent),1,ffp)!=1) pprint
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 课程设计 学生 考勤 系统 12115
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内