您好,欢迎访问三七文档
黑龙江东方学院《C语言程序设计》课程设计报告题目:成绩设计分析管理系统学生姓名王莉双学号10103119专业电子信息工程班级一班学部计算机科学与电气工程学部目录第1章绪论........................................................31.1设计目的.....................................................31.2内容与要求....................................................3第2章系统总体设计.................................................42.1系统设计的组成框图.............................................42.2功能描述.....................................................4第3章系统详细设计.................................................53.1程序设计流程图................................................53.2功能模块设计..................................................53.3函数功能描述..................................................53.4数据结构设计..................................................5第4章系统调试与测试...............................................64.2系统调试......................................................6第5章结论.........................................................75.1系统中用到的知识点.............................................75.2编程总结......................................................7附录..............................................................8黑龙江东方学院课程设计报告3第1章绪论1.1设计目的1.2内容与要求黑龙江东方学院课程设计报告4第2章系统总体设计2.1系统设计的组成框图。2.2功能描述黑龙江东方学院课程设计报告5第3章系统详细设计3.1程序设计流程图3.2功能模块设计3.3函数功能描述3.4数据结构设计黑龙江东方学院课程设计报告6第4章系统使用与测试4.1使用说明4.2系统测试主菜单显示运行结果黑龙江东方学院课程设计报告7第5章结论5.1系统中用到的知识点5.2系统难点以及解决办法5.3本系统的主要技术5.4编程总结5.5自评成绩黑龙江东方学院课程设计报告8附录/*程序源代码*/#includestdio.h#includestdlib.h#includestring.hintshoudsave=0;/**/structstudent{charnum[10];/*学号*/charname[20];charsex[4];intcgrade;intmgrade;integrade;inttotle;intave;charneartime[10];/*最近更新时间*/};typedefstructnode{structstudentdata;structnode*next;}Node,*Link;voidmenu(){printf(********************************************************************************);printf(\t1登记学生资料\t\t\t\t\t2删除学生资料\n);printf(\t3查询学生资料\t\t\t\t\t4修改学生资料\n);printf(\t5显示学生资料\t\t\t\t\t6统计学生资料\n);printf(\t7排序语文成绩\t\t\t\t\t8排序数学成绩\n);printf(\t9排序英语成绩\t\t\t\t\t10选出分段分数\n);printf(\t11保存学生资料\t\t\t\t\t12帮助信息\t\t\n);printf(\t0退出系统\t\t\t\t\t\t\t\n);printf(********************************************************************************\n);}黑龙江东方学院课程设计报告9voidprintstart(){printf(-----------------------------------------------------------------------\n);}voidWrong(){printf(\n=====提示:输入错误!\n);}voidNofind(){printf(\n=====提示:没有找到该学生!\n);}voidprintc()/*本函数用于输出中文*/{printf(学号\t姓名\t性别语文成绩数学成绩英语成绩总分平均分\n);}voidprinte(Node*p)/*本函数用于输出英文*/{printf(%-12s%s\t%s\t%d\t%d\t%d\t%d\t%d\n,p-data.num,p-data.name,p-data.sex,p-data.egrade,p-data.mgrade,p-data.cgrade,p-data.totle,p-data.ave);}Node*Locate(Linkl,charfindmess[],charnameornum[])/*该函数用于定位连表中符合要求的接点,并返回该指针*/{Node*r;if(strcmp(nameornum,num)==0)/*按学号查询*/{r=l-next;while(r!=NULL){if(strcmp(r-data.num,findmess)==0)returnr;r=r-next;}}黑龙江东方学院课程设计报告10elseif(strcmp(nameornum,name)==0)/*按姓名查询*/{r=l-next;while(r!=NULL){if(strcmp(r-data.name,findmess)==0)returnr;r=r-next;}}return0;}voidAdd(Linkl)/*增加学生*/{Node*p,*r,*s;charnum[10];r=l;s=l-next;while(r-next!=NULL)r=r-next;/*将指针置于最末尾*/while(1){printf(请你输入学号(以'0'返回上一级菜单:));scanf(%s,num);if(strcmp(num,0)==0)break;while(s){if(strcmp(s-data.num,num)==0){printf(=====提示:学号为'%s'的学生已经存在,若要修改请你选择'4修改'!\n,num);printstart();printc();printe(s);printstart();printf(\n);return;}s=s-next;}黑龙江东方学院课程设计报告11p=(Node*)malloc(sizeof(Node));strcpy(p-data.num,num);printf(请你输入姓名:);scanf(%s,p-data.name);getchar();printf(请你输入性别:);scanf(%s,p-data.sex);getchar();printf(请你输入语文成绩:);scanf(%d,&p-data.cgrade);getchar();printf(请你输入数学成绩:);scanf(%d,&p-data.mgrade);getchar();printf(请你输入英语成绩:);scanf(%d,&p-data.egrade);getchar();p-data.totle=p-data.egrade+p-data.cgrade+p-data.mgrade;p-data.ave=p-data.totle/3;/*信息输入已经完成*/p-next=NULL;r-next=p;r=p;shoudsave=1;}}voidQur(Linkl)/*查询学生*/{intsel;charfindmess[20];Node*p;if(!l-next){printf(\n=====提示:没有资料可以查询!\n);return;}printf(\n=====1按学号查找\n=====2按姓名查找\n);黑龙江东方学院课程设计报告12scanf(%d,&sel);if(sel==1)/*学号*/{printf(请你输入要查找的学号:);scanf(%s,findmess);p=Locate(l,findmess,num);if(p){printf(\t\t\t\t查找结果\n);printstart();printc();printe(p);printstart();}elseNofind();}elseif(sel==2)/*姓名*/{printf(请你输入要查找的姓名:);scanf(%s,findmess);p=Locate(l,findmess,name);if(p){printf(\t\t\t\t查找结果\n);printstart();printc();printe(p);printstart();}elseNofind();}elseWrong();}voidDel(Linkl)/*删除*/{intsel;Node*p,*r;charfindmess[20];黑龙江东方学院课程设计报告13if(!l-next){printf(\n=====提示:没有资料可以删除!\n);return;}printf(\n=====1按学号删除\n=====2按姓名删除\n);scanf(%d,&sel);if(sel==1){printf(请你输入要删除的学号:);scanf(%s,findmess);p=Locate(l,findmess,num);if(p){r=l;while(r-next!=p)r=r-next;r-next=p-next;free(p);printf(\n=====提示:该学生已经成功删除!\n);shoudsave=1;}elseNofind();}elseif(sel==2){printf(请你输入要删除的姓名:);scanf(%s,findmess);p=Locate(l,findmess,name);if(p){r=l;while(r-next!=p)r=r-next;r-next=p-next;free(p);printf(\n=====提示:该学生已经成功删除!\n);shoudsave=1;}elseNofind();}黑龙江东方学院课程设计报告14elseWrong();}voidModify(Linkl){Node*p;charfindmess[20];if(!l-next){printf(\n=====提示:没有资料可以修改!\n);return;}printf(请你输入要修改的学生学号:);scanf(%s,findmess);p=Locate(l,findmess,
本文标题:C语言课程设计模板
链接地址:https://www.777doc.com/doc-3355916 .html