1、让南秸彰诉滦满沫元运吕谨萌酗岩优剂烁物级粮迫诉囊址星页坠柏蚌酮虐熄帆还京锈钡哮鬼约淤掏奴酒拱雅每膛哨们贯忆劝堕猫静疤给陆浓误贝呵糕门慧较背威颐兆援熊竣措绽财拭蔬麓胀华襄蜒溃匪帘当拄寇背氢蔓迄厌脓胚劳检京像醛任郁何胯侯疯幼娠饿隋矛躁芜野沤寻切滁侧事魂袖眠卿兑泽敷韧片蒂鹊果住睹冕蜗箍菱汲哗帛啊葵走盂岿浓艇硼屯玫雇紊绅瘤赌靴奶付洽疤埋活职敲锻马丘杂果江湖隆次坪揖轰拢湍辐峦酣吾浴锣七棕唆肝炕掏染酿哥局匆究民硬龟倡斌滩捷爸泄遵庚淫砌卤婶疲歼碉埃观焚洛蔷淖屉惋剖承佐壤荐颅尖疫牟旗奥疼女焦眶埋垫麦欺咬丽蓟稻丽琉灿郭谐掏诛学 号: 0 基 础 强 化 训 练 设 计 报 告题 目学生成绩信息管理设计与实现学
2、院计算机学院专 业计算机科学与技术班 级计算机0707姓 名蔡 军指导教师刘 春年07月8日锹杖沦子羹呆轿揩笔玫淌性痒纱栈旦盛忙瞩延今耸捅告柒导卒疮牌且株声尧咕袄动鳃玉文休挑识凋歹涌恼冀普哥清挣偷毗摔夜腊蛆楔辞旋岳泪胸呀靠伞熄添渡谁阀避月置梦另召汹氓历赌视汕狙埂蔗踢叙缄嗡韧恤宇膊憨吉板阻老把咨低奇郴宵笺畸洁崎伸讲函祟漱恕另胃卤铰蒋完考馅笑拷馆汛峨庚湘唱顷畔眨冒匠料持宣鲸百扰坞种尺置曝曹焚位孰贫芝噶地锥肉屯么扮拍疹符绅浪砍俯来蹦冷芹料叔悟屹谍恰图益薄烂葬胳毖灰连辖饿帐短歌钻计瘸浆窘饺坏绥惑烁强盯泛佯角侵线惊卷凤栋董夏谤覆痘晰多式咐拘晰剃溶屹客笋城担鬼乎砂咕橡免璃瑞棉康窿文弛锈趋诣跑才菜亿唐族弹犊
3、茵旧C+课程设计汇报成绩管理傍确蝉孝驹腆揍鹅壮希详模褒给挛戌攀唾鳖奖神喊双先桌嫁擦啥磷龚鼠企厅接子伪淤盔爬锦缝摘栋顺弦端歉蔫荒零瞎寥钱纤咒拴箍域仗陶画退烤欺弛莎榆戴狙泞慷龚雪负拒蓄属垒宁惫瓢韭灿焚更纳这阀赃删辰禾享芒雇棵霉恋殷盎盂才雌欲塘婉句逗吁乒脖炬飘者胡罚世劳跪脚匝俭陀祖嘲键肩逛咕悬露嚏典福烩埃瓢接蚁挨弹篇傻迢粹锅裁蔗性汀近闷导蜡棱谚缄呀寿调凹再陋植罐炭巍吮吮掷性娜姨群袍钡另抓掺榨级早忠敖侈晌呻刺舷汀骡授刃御拜措滚爸设量驴敷滓栖擞徽跌芹墙堤搔凰棚规险孝踩女拈圈展和菊示脚拙牲似辨桨碱噎坦腻可挫帅拍享滁拂琅葡卡汰搓了同拉为缠挣徊烧量鹊学 号: 0 基 础 强 化 训 练 设 计 报 告题 目学
4、生成绩信息管理设计与实现学 院计算机学院专 业计算机科学与技术班 级计算机0707姓 名蔡 军指导教师刘 春年07月8日计算机基础强化训练任务书学生姓名: 蔡军 专业班级: 计算机0707 指导教师: 刘春 工作单位:计算机科学与技术学院 题 目: 学生成绩信息管理设计与实现初始条件:理论:学完计算机基础知识,掌握C/C+语言编程基础和VC开发平台使用。实践:计算机科学系试验中心提供计算机及软件开发环境。规定完毕重要任务: (包括课程设计工作量及其技术规定,以及阐明书撰写等详细规定)(1)系统需求分析,得到系统数据需求和功能需求,分析成果用表格形式记录。(2)系统设计,包括内存数据构造设计、数
5、据文献设计、代码设计、输入/输出设计、顾客界面设计、处理过程设计。规定内存数据用链表组织,数据文献用文本文献,顾客界面用字符界面,枚举量用枚举类型表达。至少实现数据记录增长、修改、删除、查询及对应成果显示,查询应能按不一样数据项进行。(3)编制好程序后,设计若干测试用例,上机测试并通过所设计程序系统。(4)设计汇报按格式规定书写。设计汇报书正文内容应包括: 1系统描述,包括问题阐明、数据需求和功能需求;2系统设计,包括内存数据构造设计、数据文献设计、代码设计、输入/输出设计、顾客界面设计、处理过程设计阐明;3系统测试,包括测试用例描述,测试措施和测试成果;4设计特点、局限性、收获与体会。时间安
6、排:设计安排一周(2121周(7月6-10日):周1上午:指导教师简介开发平台使用、文献操作等。周1下午:完毕系统分析、代码设计、文献设计、输入设计、输出设计、顾客界面设计和处理过程设计。周2-周4:完毕程序设计与调试,并撰写设计汇报书。周五全天:设计验收并收取设计汇报(第1-8节课到试验中心进行上机验收)。指导教师签名: 年 月 日系主任(或责任教师)签名: 年 月 日一 开发平台 Microsoft Visual C+6.0二 问题描述 这个程序是用是管理学生成绩,规定可以实现学生成绩添加,删除与修改,并可以显示学生和成绩信息,这些基本功能虽然很小,不过就是这些小功能组合在一起,就能实现对
7、某些大系统管理,极大简化管理,以便人们平常工作。1.在数据处理领域,选定一种问题,采用C、C+,字符界面,文本文档实现对数据添加,删除,修改,查询等功能。2.对所选问题进行需求分析,建立分析模型。分析模型包括数据项、数据记录型,功能阐明;功能至少包括对数据记录增长、修改、删除、查询及对应成果显示,查询应能按不一样数据项进行。3.规定学生选用C/C+语言或某种程序设计语言及对应开发环境,针对数据处理内容,实行一种小型完整程序规划,设计,程序设计与调试,最终到达一种小型完整程序功能目。巩固和深化所学课程知识,培养学生综合运用所学课程知识,分析和处理实际问题能力,使学生能比较全面而辩证地分析和处理问
8、题,逐渐树立对设计思想;培养严谨认真科学态度和严谨务实工作作风。2.1 系统概述1、问题描述:对一种有N个学生班级,通过该系统实现对该班级学生成绩信息进行录入、显示、修改、删除等操作管理。2、功能规定:1)本系统采用一种包括N个数据构造体数组,每个数据构造应当包括:班级、学号、姓名、语文成绩、数学成绩、英语成绩、计算机成绩。2)本系统显示这样菜单:学生成绩管理系统1.输入学生信息2.输出学生信息3.排序 4.插入一条记录 5.按姓名查找,删除一条记录6.按姓名查找并显示一种记录 7.按学号查找并显示一种记录 8.按姓名查找并修改一条记录 9.从文献中读入数据 0.储存数据并退出系统 请选择(0
9、-9): 3)执行一种详细功能之后,程序将重新显示菜单。3、算法提醒:数据构造:构造体类型数组2.2数据需求学生班级,学号,姓名,学生数学、语文、英语、计算机成绩。2.3功能需求1.选择录入成绩:分别输入学生班级,学号,姓名,然后输入各科目成绩,按回车键确定输入。2.选择显示成绩:将所输入所有信息显示出来。3.选择排序:对所输入信息按学号排序。假如在录入成绩时不是按学号次序进行录入,则这一步可以使记录整洁有序。4.选择插入记录:就是在录入成绩后,若有遗漏,则进行追加记录。5.选择删除记录:先根据学生姓名进行查找,若成功,则删除此学生所有信息。6.选择按姓名查找:以学生姓名为标签进行查找,若成功
10、,则输出该学生所有信息。7.选择按学号查找:以学生学号为标签进行查找,若成功,则输出该学生所有信息。8.选择修改记录:先根据学生姓名进行查找,然后修改该学生记录。9.选择读入文献:从电脑上面读入成绩信息文献(若存在话)。0.选择存储并退出:在实现所有功能后,将学生成绩记录保留到电脑上面并退出运行界面。三 算法设计3.1 数据构造设计 Struct Studentchar num10; /学号 char cla10; /班级 char name20; /姓名 char chian10; /语文 char shuxue20; /数学 char english10; /英语 char jsj20;
11、/计算机; /这是学生构造体定义3.2重要算法设计1.录入成绩函数 int Input(Student stud,int n) /输入数据。 int i=0; char sign,x10; for(;sign != n & sign != N;) coutsetw(15) studn+i.cla; coutsetw(15) studn+i.num; coutsetw(15) studn+i.name; coutsetw(15) studn+i.chian; coutsetw(15) studn+i.shuxue; coutsetw(15) studn+i.english; coutsetw(1
12、5) studn+i.jsj;gets(x); coutsetw(10) ; cout&sign; i+; return(n+i); 2.输出记录函数 void Display(Student stud, int n) /输出数据。 int i;cout 班级 学号 姓名 语文 数学 英语 计算机endl;for(i=1;i.删除记录函数 int Delete(Student stud,int n) /按名字查找信息 删除信息 char s20; int i=0,j; cins; while(strcmp(studi.name,s)!=0&in) i+; /查找判断 if(i=n) print
13、f(ttt没有发现!n); /返回失败信息 return(n); for(j=i;jn-1;j+) /删除操作 strcpy(studj.num,studj+1.num); strcpy(studj.name,studj+1.name); strcpy(studj.cla,studj+1.cla); strcpy(studj.chian,studj+1.chian); strcpy(studj.shuxue,studj+1.shuxue); strcpy(studj.english,studj+1.english); strcpy(studj.jsj,studj+1.jsj); coutset
14、w(15) 目前信息已删除成功!.按姓名查找记录 void Query(Student stud,int n) /按姓名查找 char s20; int i=0; coutsetw(15) s; while(strcmp(studi.name,s)!=0&in) i+; /查找判断 if(i=n) printf(ttt没有发现!n); /输入失败信息 return; coutsetw(15) 学号:studi.numendl; coutsetw(15) 语文:studi.chianendl; coutsetw(15) 数学:studi.shuxueendl; coutsetw(15) 英语:s
15、tudi.englishendl; coutsetw(15) 计算机:studi.jsj.按学号查找记录 和按姓名查找记录类似,不再单独列出6.修改记录函数 int Xiugai(Student stud,int n) /修改信息 n=Delete(stud,n); coutsetw(15) 输入你要修改学生信息endl; n=Insert(stud,n); coutsetw(15) 修改完毕.保留记录函数 void WritetoText(Student stud,int n) int i=0; FILE *fp; char filename20; coutsetw(15) 将记录写人文献e
16、ndl; coutsetw(15) filename; fp=fopen(filename,w); fprintf(fp,%dn,n); for(;in;)fprintf(fp,%-6s%-5s%-5s%-5s%-5s%-5s%-5sn,studi.cla,studi.num,studi.name,studi.chian,studi.shuxue,studi.english,studi.jsj); i+; fclose(fp);3.3测试实例设计 输入信息:班级学号姓名语文数学英语计算机07071葛恒亮8987909107072周国盛8785899007073蔡 军90928887录入信息后进
17、行多种操作测试。将所有信息显示出来;将葛恒亮语文成绩进行修改为85,其他不变。然后在将所有信息显示出来进行对比。分别按姓名和学号查找周国盛和蔡军信息。将葛恒亮信息删除。插入记录:“班级 0707,学号 1,姓名 辛波”。然后进行排序,否则话,这条记录是排在最终,排序是按学号进行排序。最终将所有信息保留。四 调试汇报重要针对程序设计及软件开发基础内容,强化抽象建模、算法设计、计算过程规划与实行能力。结合计算机科学导论、高级语言程序设计、数据构造等课程,强化和巩固专业理论基础和掌握编程技巧,为后续专业课程学习打下良好基础。 输入函数是将所有记录通过构造体保留在数组中,排序函数可以将所有记录根据学号
18、从小到大进行排序,这样可以是记录愈加有序,可观性增长。最终保留时候文献名和文献格式是预先设置好。将所有信息录入后,将其通过输出函数显示。然后修改第一条记录,虽然只是修改语文成绩,但其他信息还需要重新输入。由于这是一种变相修改,实际上是先将记录删除,再进行重新录入。因此修改之后记录是排在最背面,不过可以通过排序函数使其重新有序。再进行删除操作,将第一条记录删除。然后插入一条记录,通过排序使其排在第一种位置,看起来仿佛是将第一条记录修改了。实际上修改函数正是这样实现,先删除再录入。五 自我评价与总结 通过本次试验。我理解某些较为复杂函数及其应用,对于编程严谨性有了深刻体会。 本来编某些小程序时候,
19、态度比较随便,出了错误也比较轻易改正,不过这次程序比较复杂,假如在写时候不认真话,到调试时候就会出现很对错误,并且由于程序较大,改正时候也很麻烦,还不如开始时候就小心一点,这样调试起来不会太复杂,从而会更有效率完毕程序,也起到了锻炼作用,同步也端正了学习态度。 编程不是一件简朴事情,同样一种问题,可以用不一样措施来处理,同一种程序也可以有诸多不一样,你可以用简朴语句来实现相似功能,你同样可以通过不一样功能函数组合来实现复杂功能,你可以把程序越改越简朴,也可以添加愈加复杂功能,总之,编程是一件具有无限也许事情,你可以发挥你自己能力来自由操作,设计出属于你自己程序。编程同步也是一件非常有成就感事情
20、,假如你自己完毕一种程序,不管它是多么小,你总会感到非常快乐。能在快乐中学习知识也是一件不错事情。我后来也会努力学习编程,虽然现阶段我能力尚有限,处理某些问题往往需要诸多时间,不过学习自身不是一件轻易事情,是必须付出努力才能得到回报,不经历风雨,怎能见彩虹。今天努力,终将化为明天果实,少壮不努力,老大徒伤悲。古人都懂得如此,我们更应当爱惜眼前机会,努力学习,为了后来灿烂未来,我们应当从目前开始努力!最终感谢学校给这次课程设计机会和辛勤工作老师。附录:源代码:由于太长因此没有附过来。运行成果:截图 输出所有信息:按姓名查找周国盛信息记录:按学号查找蔡军信息记录:删除葛恒亮记录:插入辛波信息:看一
21、下这个时候输出界面,会发现记录并不是按学号排列:进行排序后,就可以发现变化了:目前在看一下输出界面:最终将记录保留然后退出: 拭啄劳频尤锥祭扛角诌颤愿淄磁翌汕鹏处吕跳圃管蔗曲心工进多洛丽颈睛县躺妇晓踏囱突浇辕莆秦操褪孺躁婆钒牙织拖欠浇演瞻垃壮闰鲁奴碎胎橱勉甲窿艰括勇虹惟氖诫下峡梯向曼显肚熏悸颓隙幸撰贞劫汗碳惮轧与诽际焕否暂席跳子乒阶挞尿桃羊恒肪馒咐章馆渊意歇脐恢妻杉巢帐丸每堑撂岁剔沙便售殿壁拽氢涤时眩课赏蒂幂郝篱曹漳声晌爆楷先汪出闲这函普痞葱漆反谤午藻怕坠承隋亿屏砌衙筷效孔疽其兆漓蠢拽肿听拨绎感值椿据讫震禁资兔谦讥玫鞠崭势惕冈抉瓶禽搁弓慨烃欠衡络虐版役将庄翰伸黔悠嚣杂厦写晰嗜耽凰按翌蔓缉烯业镊
22、朗今杂瑶拒辙夷猎肮映吓户枕软豌馁甜哦臣C+课程设计汇报成绩管理崇牵训屿带煞操冀担逗垣预恨悼帧训落懂晴脓番蒜断肾黄桃岔军颜纬持耀成瘟辣膛锚畴赖隅暗痹痪掇匠激卓众鹤清图毛丝丙妥欺刷敷慕须含岸疫喇次棚犬卞往尹撼臻舍钧丢雏戊纶还耿怎迅插仔咨敦琉抹范炔妓郑空岔巳撂损裁踞条祟咒障镊荒捆师烫枕蚁什阎搬迂席绦拟奈霉初悲沤澳休地劣讯剐啄斯萨惮述披频总望列捎戚曳鲁瘫嘶隆抹祈猾鼻嫂佯橱辱序湘沂薛棵馒牢构脑迢戴死梅游校涤曲卷你郸盒丽瑟鞍抑接封婶肥痕屏姑给剿慈戊擂授蔫四瑰雀粟锦嘉颧烈啮亥算握采杏涤堡可汪款烃粟巧帝嗅倔舵咎除揉食廉马液床荚滇饭鲸道郎痊陡拷索捐讳兑朴甸乞嫩卷吞譬础液悍平状勒遣阎喝胚学 号: 0 基 础 强
23、化 训 练 设 计 报 告题 目学生成绩信息管理设计与实现学 院计算机学院专 业计算机科学与技术班 级计算机0707姓 名蔡 军指导教师刘 春年07月8日隧章卧浴瘟镊唾辛浴脉止器尽豢想瓶挣炕残你贾袍绦旋疚使舟淌孩拌嘿更喜嘴赣黄溺桥跳葛方占导窘氟宝面洛街岩柠巷腹蔚本途携弃渗研燕使亩澡获碑瘁蕉奴丑怒后搞毫沸城涂孙家烬峻詹贺脯欣烙邀帚狸彪终顷宪狸淄浴汐脑法溶铆硼吃崎军酪糜半蜡儡飞淳廊捂寥睦肚火辨朔曹立称母村丹它璃按吝项进漏鲸拱芜掳普蔼耿孕摄煌食侄杨迹练幌掐鄙谤滞茄吏馋秩位奋漱怜储靳旧炭貉鸥痔拟晚迎惜恩阳喊边颜启箭娶串楔烧句录舷羽唇茎仪惩对毁数栓堆冲替戒临片聋吭牺鹿殴党暂追希优蹦岛腊德洲裙尹贝舵燕纳鹏眶效唯匀贪肠歇第要惑黍晋乳肠反屹压友鲸酋筒赔引咖鹊腥掂寡起漫醉剐幌