![基于c语言的学生成绩管理系统报告_第1页](http://file4.renrendoc.com/view/9d59aa0b89431688ca5576ef5474e13c/9d59aa0b89431688ca5576ef5474e13c1.gif)
![基于c语言的学生成绩管理系统报告_第2页](http://file4.renrendoc.com/view/9d59aa0b89431688ca5576ef5474e13c/9d59aa0b89431688ca5576ef5474e13c2.gif)
![基于c语言的学生成绩管理系统报告_第3页](http://file4.renrendoc.com/view/9d59aa0b89431688ca5576ef5474e13c/9d59aa0b89431688ca5576ef5474e13c3.gif)
![基于c语言的学生成绩管理系统报告_第4页](http://file4.renrendoc.com/view/9d59aa0b89431688ca5576ef5474e13c/9d59aa0b89431688ca5576ef5474e13c4.gif)
![基于c语言的学生成绩管理系统报告_第5页](http://file4.renrendoc.com/view/9d59aa0b89431688ca5576ef5474e13c/9d59aa0b89431688ca5576ef5474e13c5.gif)
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
杭州电子科技大学信息工程学院创新创业实践报告杭州电子科技大学信息工程学院创新创业实践报告创新创业实践报告第第页实践项目名称学生成绩管理系统实践项目的目的锻炼C语言编程能力和软件组织设计能力项目用到的相关知识c语言C语言是一门通用计算机编程语言,应用广泛。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。尽管C语言提供了许多低级处理的功能,但仍然保持着良好跨平台的特性,以一个标准规格写出的C语言程序可在许多电脑平台上进行编译,甚至包含一些嵌入式处理器(单片机或称MCU)以及超级电脑等作业平台。指针使用指针来读取数据,在重复性操作的状况下,可以明显改善程序性能,例如在遍历字符串,查取表格,控制表格及树状结构上。对指针进行复制,之后再解引用指针以取出数据,无论在时间或空间上,都比直接复制及访问数据本身来的经济快速。指针的机制比较简单,其功能可以被集中重新实现成更抽象化的引用数据形别。许多编程语言中都支持某种形式的指针,最著名的是C语言,但是有些编程语言对指针的运用采取比较严格的限制,如Java一般避免用指针,改为使用引用。有两种含义,一是作为数据类型,二是作为实体。指针作为实体,是一个用来保存一个内存地址的计算机语言中的变量。指针一般出现在比较底层的程序设计语言中,如C语言。高层的语言如Java一般避免用指针,而是引用。指针作为数据类型,可以从一个函数类型、一个对象类型或者一个不完备类型中导出。从中导出的数据类型称之为被引用类型。指针类型描述了一种对象,其值为对被引用类型的实体的引用。C++标准中规定,“指针”概念不适用于成员指针(不包含指向静态成员的指针)。C++标准规定,指针分为两类:objectpointertype:指向void或对象类型,表示对象在内存中的字节地址或空指针。functionpointertype:指代一个函数。数组所谓数组,就是相同数据类型的元素按一定顺序排列的集合,就是把有限个类型相同的变量用一个名字命名,然后用编号区分他们的变量的集合,这个名字称为数组名,编号称为下标。组成数组的各个变量称为数组的分量,也称为数组的元素,有时也称为下标变量。数组是在程序设计中,为了处理方便,把具有相同类型的若干变量按有序的形式组织起来的一种形式。这些按序排列的同类数据元素的集合称为数组。结构体在C语言中,结构体指的是一种数据结构,是C语言中聚合数据类型的一类。结构体可以被声明为变量、指针或数组等,用以实现较复杂的数据结构。结构体同时也是一些元素的集合,这些元素称为结构体的成员,且这些成员可以为不同的类型,成员一般用名字访问。变量变量来源于数学,是计算机语言中能储存计算结果或能表示值抽象概念。变量可以通过变量名访问。在指令式语言中,变量通常是可变的;但在纯函数式语言中,变量可能是不可变的。在一些语言中,变量可能被明确为是能表示可变状态、具有存储空间的抽象;但另外一些语言可能使用其它概念(如C的对象)来指称这种抽象,而不严格地定义“变量”的准确外延。由于变量让你能够把程序中准备使用的每一段数据都赋给一个简短、易于记忆的名字,因此它们十分有用。变量可以保存程序运行时用户输入的数据(如使用InputBox函数在屏幕上显示一个对话框,然后把用户键入的文本保存到变量中)、特定运算的结果以及要在窗体上显示的一段数据等。简而言之,变量是用于跟踪几乎所有类型信息的简单工具。变量声明后没有赋值的话编译器会自动提示并赋予默认值变量是一种使用方便的占位符,用于引用计算机内存地址,该地址可以存储Script运行时可更改的程序信息。例如,可以创建一个名为ClickCount的变量来存储用户单击Web页面上某个对象的次数。使用变量并不需要了解变量在计算机内存中的地址,只要通过变量名引用变量就可以查看或更改变量的值。在VBScript中只有一个基本数据类型,即Variant,因此所有变量的数据类型都是Variant。函数一个较大的程序一般应分为若干个程序块,每一个模块用来实现一个特定的功能。所有的高级语言中都有子程序这个概念,用子程序实现模块的功能。在C语言中,子程序的作用是由一个主函数和若干个函数构成。由主函数调用其他函数,其他函数也可以互相调用。同一个函数可以被一个或多个函数调用任意多次。在程序设计中,常将一些常用的功能模块编写成函数,放在函数库中供公共选用。要善于利用函数,以减少重复编写程序段的工作量。函数分为全局函数、全局静态函数;在类中还可以定义构造函数、析构函数、拷贝构造函数、成员函数、友元函数、运算符重载函数、内联函数等。函数的定义:返回类型名字(形式参数表列){函数体语句return表达式;}函数调用:名字(实际参数表列);软件设计及流程图进入软件时可看到如下界面:首次使用时选择1(创建学生成绩管理册),输入学生成绩,输入后会有提示保存和查看,输入错误字符也会有温馨提示。创建完学生成绩管理册后,可以对原有的学生信息进行添加删除和相应的修改。代码分析:在主函数中,仅有两个自定义函数(菜单显示和选择),这两个函数也是对整个程序的主流程。(menu();choose();)函数menu()用于显示主菜单,具有清屏功能。函数choose()用于对主菜单的功能进行选择。若输入错误会有提示。函数input()这个函数是进行用户对学生成绩的输入,依次可输入学号、姓名、年龄、C语言成绩、代数成绩,系统会自行计算总分。函数savescore()这个函数是对输入信息的保存,程序默认保存在D:/score.txt中,若保存不成功或无法打开,会有相应的提示。特别注意:因为该程序会在D盘生成相应文件,容易被360等杀毒软件识别并拦截,运行前请关闭杀毒软件。函数loadscore()这个函数是对输入信息的读取,程序默认读取在D:/score.txt中,若读取不成功或无法打开,会有相应的提示。函数choosec()这个函数是对学生列表信息的排序,排序分为按学号降序、按姓名降序、 按总分由高到低、按c语言由高到低、按代数由高到低和回到主菜单。 选择不同的排序方法会进入不同的子函数。函数number()该函数用于对学号排序的子函数。函数name()该函数用于对姓名排序的子函数。函数total()该函数用于对总分排序的子函数。函数score_C()该函数用于对C语言分数排序的子函数。函数score_algebra()该函数用于对代数分数排序的子函数。函数show()该函数可显示所有学生信息。显示后通过任意键返回主菜单。函数chaxun()该函数可查询相应信息,是查询函数的总目录(学号、姓名、年龄)。函数personal()该函数可根据学生姓名进行查询相应信息。若输入错误会有提示。函数add()该函数可添加新的学生信息。函数fix()该函数可修改学生信息。若无法找到,会有相应的提示。函数del()该函数可删除旧的学生信息。若无法找到,会有相应的提示。函数Exit()退出函数,显示制作组,并按任意键退出以下是总流程图:总流程图主流程图软件代码#include<stdio.h>#include<string.h>#include<stdlib.h>#include<conio.h>#defineM1/*定义结构体变量*/typedefstructstudent{ intnum;//学号; charname[30];//姓名;intage;//年龄 doublescore_C;//C语言的成绩; doublescore_algebra;//代数的成绩; doublescoreAll;//总成绩;}MESSA;MESSAstu[40];intS;/*typedefstructstudents{ charname[20]; charnum[15]; floatscore[M]; floataverage; floattotal;}MESSA;MESSAstu[20];intS;*//*全局变量*/intii=0;/*函数声明*/voidmenu(void);voidchoose(void);voidinput(void);voidsavescore(void);voidloadscore(void);voidchoosec(void);voidaverage(void);voidtotal(void);voidname(void);voidnumber(void);voidshow(void);voidexcellent(void);voidpassing(void);voidpersonal(void);voidExit();voidscore_C(void);voidscore_algebra(void);voidnumber1(void);voidadd();voidfix();voiddel();voidchaxun();/*主函数调用*/intmain(){ menu(); choose();}/*菜单系统*/voidmenu(void){ system("CLS"); printf("\t^*^*^*^*^*^*^*^*^*^*^*^*^*^*^*^*^*^*^*^*^*^*^*^*^*^*^*^*^\n"); printf("\t^*。。。。。。欢迎使用这个成绩管理系统。。。。。。。*^\n"); printf("\t^*^*^*^*^*^*^*^*^*^*^*^*^*^*^*^*^*^*^*^*^*^*^*^*^*^*^*^*^\n"); printf("\n"); printf("\t##########################################\n"); printf("\t#创建学生成绩管理册1#\n"); printf("\t#添加学生的信息2#\n"); printf("\t#删除学生的信息3#\n"); printf("\t#修改学生的信息4#\n"); printf("\t#显示所有学生的信息5#\n"); printf("\t#搜索个人个门成绩分数6#\n"); printf("\t#所有学生信息的排序7#\n"); printf("\t#离开9#\n"); printf("\t##########################################\n"); printf("\n\t请选择:\n\t");}/*菜单选择*/voidchoose(void){ intx,flag=0; while(flag==0) { fflush(stdin); scanf("%d",&x); getchar(); switch(x) { case1:input();savescore();loadscore();menu();choose();flag=1;break; case2:add();input();savescore();loadscore();menu();choose();flag=1;break; case3:del();savescore();loadscore();menu();choose();flag=1;break; case4:fix();savescore();loadscore();menu();choose();flag=1;break; case5:flag=1;number1();show();break; case6:chaxun();flag=1;break; case7:choosec();flag=1;break; case9:Exit();flag=1; default:printf("\t对不起,输入有误或该项服务未开通\n"); } }}/*输入学生成绩*/voidinput(void){ intflag=1,j,i;chark;floatpp=0; for(;flag==1;ii++) { printf("\t请输入第N.%hd个学生的成绩信息:\n",ii+1); fflush(stdin); puts("\t学号:"); fflush(stdin); scanf("%d",&stu[ii].num); puts("\t姓名:"); fflush(stdin); gets(stu[ii].name); fflush(stdin); puts("\t年龄:"); fflush(stdin); scanf("%d",&stu[ii].age); fflush(stdin); puts("\t分数:\tC语言\t代数"); for(j=0;j<M;j++) scanf("%lf%lf",&stu[ii].score_C,&stu[ii].score_algebra); puts("\t你想要继续么?(Y/N)"); while(1) { puts("\t请选择"); fflush(stdin); scanf("%c",&k); if(k!='N'&&k!='Y') puts("\t出错了,再输一次{{{(>_<)}}}!"); elseif(k=='N') { flag=0;S=ii;break; } elsebreak; } } for(i=0;i<=S;i++) { for(j=0,stu[i].scoreAll=0.0;j<M;j++) stu[i].scoreAll=stu[i].score_algebra+stu[i].score_C; } number1();}/*保存数据*/voidsavescore(void){ inti,flag=1;FILE*fp;charm; puts("\t你想要保存这些数据么?(Y/N)");while(1){ fflush(stdin); scanf("%c",&m);if(m=='Y'){if((fp=fopen("D:\\score.txt","w"))==NULL){ printf("\t对不起,无法打开这个表单(+﹏+)~狂晕\n"); exit(0);}for(i=0;i<=S;i++) if(fwrite(&stu[i],sizeof(structstudent),1,fp)!=1) { puts("\t对不起,表单书写错误了!(+﹏+)~狂晕"); flag=0; }if(flag==1) for(i=0;i<=S;i++) printf("\t好了,第N.%d个学生的数据已经被保存!!!\(^o^)/~\n",i+1);fclose(fp);break;}elseif(m!='N'&&m!='Y') puts("\t输入错误,请重新输入!⊙﹏⊙b");else break;}}/*读取文件中保存的数据*/voidloadscore(void){ FILE*fp;charn;MESSArestu[20];inti,flag=0; charread[6][10]={"学号","姓名","年龄","c语言","代数","总分"}; puts("\t你想要立刻读取这些数据么?(Y/N)"); while(1) { fflush(stdin); scanf("%c",&n); if(n=='Y') { if((fp=fopen("D:\\score.txt","r"))==NULL) { fprintf(stderr,"\tOpen%serror!!!\n","score.txt"); exit(0); } for(i=0;i<=S;i++) fread(&restu[i],sizeof(structstudent),1,fp); system("CLS"); puts("\t成绩信息读取中"); printf("\t好的,表单已经被读取!\n"); printf("\n"); printf("\t$**$**$**$**$**$**$**$**$**$**$**$**$**$**$**$**$**$**$**$**$**$**$**$\n"); printf("\t$**$\t\t\t\t\t\t\t\t$**$\n\t"); printf("$**$"); for(i=0;i<6;i++) printf("%-10s",read[i]); printf("$**$"); printf("\n"); for(i=0;i<=S;i++) { printf("\t$**$"); printf("%-10d%-10s",restu[i].num,restu[i].name); printf("%-10d",restu[i].age); printf("%-10.1f",restu[i].score_C); printf("%-10.1f",restu[i].score_algebra); printf("%-10.1f",restu[i].scoreAll); printf("$**$\n"); } printf("\t$**$\t\t\t\t\t\t\t\t$**$"); printf("\n\t$**$**$**$**$**$**$**$**$**$**$**$**$**$**$**$**$**$**$**$**$**$**$**$\n"); fclose(fp); break; } elseif(n=='N') break; else printf("\t对不起,出现错误了,再来一次!\n"); } puts("\t输入任意键回到主菜单\n"); getchar(); getchar();}/*选择查分的子菜单及子菜单选择*/voidchoosec(void){ intbiao,i,flag=0;FILE*fp; if((fp=fopen("D:\\score.txt","r"))==NULL) { printf("\t对不起,你无法输入任何成绩信息!无法打开这个表单!\n\n\n"); printf("\t输入任意键回到主菜单!!\n"); getchar(); getchar(); menu(); choose(); } for(i=0;i<=S;i++) fread(&stu[i],sizeof(structstudent),1,fp); fclose(fp); system("CLS"); printf("\t以下是第二个菜单:\n"); printf("\n"); printf("\t%%$%%$%%$%%$%%$%%$%%$%%$%%$%%$%%$%%$%%$%%$%%$%%$%%$%%$%%$%%$%%$%%$%%$%%$%%$%%$%%$%%$%%$%%$%%$%%$\n"); printf("\t%%$按学号降序1%%$\n"); printf("\t%%$按姓名降序2%%$\n"); printf("\t%%$按总分由高到低3%%$\n"); printf("\t%%$按c语言由高到低4%%$\n"); printf("\t%%$按代数由高到低5%%$\n"); printf("\t%%$回到主菜单9%%$\n"); printf("\t%%$%%$%%$%%$%%$%%$%%$%%$%%$%%$%%$%%$%%$%%$%%$%%$%%$%%$%%$%%$%%$%%$%%$%%$%%$%%$%%$%%$%%$%%$%%$%%$\n"); printf("\n\t请选择输入方式:\n"); while(flag==0) { fflush(stdin); scanf("%d",&biao); getchar(); switch(biao) { case1:flag=1;number();show();break; case2:flag=1;name();show();break; case3:flag=1;total();show();break; case4:flag=1;score_C();show();break; case5:flag=1;score_algebra();show();break; case9:flag=1;menu();choose();break; default:printf("\t对不起,操作无法进行!请重新做出正确操作!\n"); } }}/*显示分数*/voidshow(void){inti,n,flag=0;charhead[7][10]={"学号","姓名","年龄","c语言","代数","总分"};system("CLS");puts("\t读取信息中");printf("\n");printf("\t$**$**$**$**$**$**$**$**$**$**$**$**$**$**$**$**$**$**$**$**$**$**$**$\n\n\t");for(i=0;i<7;i++)printf("%-10s",head[i]);printf("\n\t");for(i=0;i<=S;i++)////////////////////////////////////////////////////////////////////////{printf("%-10d%-10s",stu[i].num,stu[i].name);printf("%-10d",stu[i].age);printf("%-10.1f",stu[i].score_C);printf("%-10.1f",stu[i].score_algebra);printf("%-10.1f",stu[i].scoreAll);printf("\n\t");}printf("\n\t$**$**$**$**$**$**$**$**$**$**$**$**$**$**$**$**$**$**$**$**$**$**$**$\n");printf("\n\t请选择:(1or2)\n\n");puts("\t1.回到第二个菜单!\n");puts("\t2.回到主菜单!\n");while(flag==0){fflush(stdin);scanf("%d",&n);getchar();switch(n){case1:flag=1;choosec();break;case2:flag=1;menu();choose();break;default:printf("\t出错了,请再次输入!\n");}}}/*按总分由高到低*/voidtotal(void){inti,j,k;MESSAt;for(i=0;i<S;i++){k=i;for(j=i+1;j<=S;j++)if(stu[k].scoreAll<stu[j].scoreAll)k=j;if(k!=i){t=stu[k];stu[k]=stu[i];stu[i]=t;}}}/*按c语言由高到低*/voidscore_C(void){inti,j,k;MESSAt;for(i=0;i<S;i++){k=i;for(j=i+1;j<=S;j++)if(stu[k].score_C<stu[j].score_C)k=j;if(k!=i){t=stu[k];stu[k]=stu[i];stu[i]=t;}}}/*按代数由高到低*/voidscore_algebra(void){inti,j,k;MESSAt;for(i=0;i<S;i++){k=i;for(j=i+1;j<=S;j++)if(stu[k].score_algebra<stu[j].score_algebra)k=j;if(k!=i){t=stu[k];stu[k]=stu[i];stu[i]=t;}}}/*按学号降序*/voidnumber(void){inti,j,k;MESSAt;for(i=0;i<S;i++){k=i;for(j=i+1;j<=S;j++)if(stu[k].num<stu[j].num)k=j;if(k!=i){t=stu[k];stu[k]=stu[i];stu[i]=t;}}}/*按学号升序*/voidnumber1(void){inti,j,k;MESSAt;for(i=0;i<S;i++){k=i;for(j=i+1;j<=S;j++)if(stu[k].num>stu[j].num)k=j;if(k!=i){t=stu[k];stu[k]=stu[i];stu[i]=t;}}}/*按姓名降序*/voidname(void){inti,j,k;MESSAt;for(i=0;i<S;i++){k=i;for(j=i+1;j<=S;j++)if(strcmp(stu[k].name,stu[j].name)<0)k=j;if(k!=i){t=stu[k];stu[k]=stu[i];stu[i]=t;}}}/*个人学生成绩查询*/voidpersonal(void){ inti,f,w,flag=0;charb[10],a;FILE*fp; charhead3[6][10]={"学号","姓名","年龄","c语言","代数","总分"}; if((fp=fopen("D:\\score.txt","r"))==NULL) { printf("\t对不起,无法输入任何信息!无法找到该表单!\n\n\n"); printf("\t输入任意键回到主菜单!!\n"); getchar(); getchar(); menu(); choose(); } for(i=0;i<=S;i++) fread(&stu[i],sizeof(structstudent),1,fp); fclose(fp); puts("\t请输入你想要搜索的学生成绩信息:\n"); puts("\t学生成绩信息如下\n"); for(i=0;i<=S;i++) printf("\t%s",stu[i].name); puts("\t\nYourchooseis:\n"); while(1) { fflush(stdin); gets(b); for(i=0;i<=S;i++) if(strcmp(b,stu[i].name)==0) { printf("\t该生学生成绩信息%s?(Y/N)\n",stu[i].name); f=i; } fflush(stdin); scanf("%c",&a); if(a=='Y') { system("CLS"); puts("\t成绩信息读取中"); printf("\n"); printf("\t**********************************************************************\n\n\t"); for(i=0;i<6;i++) printf("%-10s",head3[i]); printf("\n\t"); printf("%-10d%-10s",stu[f].num,stu[f].name); printf("%-10d",stu[f].age); printf("%-10.1f",stu[f].score_C); printf("%-10.1f",stu[f].score_algebra); printf("%-10.1f",stu[f].scoreAll); printf("\n"); printf("\t**********************************************************************\n");break; } else printf("\t出错了,重新选择吧!\n"); } puts("\t是否继续操作?\n"); printf("\t1.离开系统!\n"); printf("\t2.回到主菜单!\n"); printf("\t3.回到第二个菜单!\n"); puts("\t请选择:\n"); while(flag==0) { fflush(stdin); scanf("%d",&w); getchar(); switch(w) { case1:Exit();flag=1; case2:menu();choose();flag=1;break; case3:choosec();flag=1;break; default:printf("\t对不起,操作无法进行!请重新选择!\n"); } }}/*添加*/voidadd(){ inti,a,f=1;m1: printf("\t请输入添加的学号:\n"); scanf("%d",&a); f=1; for(i=0;i<ii;i++) { if(stu[i].num==a) { f=0; } } if(f==1) { printf("\tok,可添加"); } elseif(f==0) { printf("\t已经有啦,不可添加\n"); gotom1; }}/*修改*/voidfix(){ inti,a,f=1,x;m1: printf("\t请输入修改的学号:\n"); scanf("%d",&a); f=1; for(i=0;i<ii;i++) { if(stu[i].num==a) { f=0;break; } } if(f==0) { printf("\tok,可修改\n"); printf("\t请输入修改内容:\n\t1.名字\t2.年龄\t3.c语言分数\t4.代数分数\n\t修改总分是不可以的啦\n\t\t9.主菜单\n"); scanf("%d",&x); getchar(); if(x==1) { printf("\t请输入新的名字\n"); fflush(stdin); scanf("%s",&stu[i].name); fflush(stdin); } if(x==2) { printf("\t请输入新的年龄\n"); fflush(stdin); scanf("%d",&stu[i].age); fflush(stdin); } if(x==3) { printf("\t请输入新的c语言分数\n"); fflush(stdin); scanf("%lf",&stu[i].score_C); fflush(stdin); } if(x==4) { printf("\t请输入新的代数分数\n"); fflush(stdin); scanf("%lf",&stu[i].score_algebra); fflush(stdin); } if(x==9) { menu(); } } elseif(f==1) { printf("\t没有数据啦,不可修改\n"); gotom1; }}/*删除*/voiddel(){ inti,j,a,f=1,x; charc[10]; f=1;m2: printf("\t请输入删除内容:\n\t1.学号\t2.名字\n\t\t9.主菜单\n"); scanf("%d",&a); if(a==1) { printf("\t请输入删除的学号\n"); fflush(stdin); scanf("%d",&x); fflush(stdin); for(i=1;i<ii;i++) { if(stu[i].num==x) { f=0;break; } } if(f==0) { for(j=i;j<ii;j++) { stu[j]=stu[j+1]; } printf("\tok,已删除\n"); ii--; } elseif(f==1) { printf("\t没有数据啦,不可删除\n"); gotom2; } } elseif(a==2) { printf("\t请输入删除的名字\n"); fflush(stdin); gets(c); for(i=1;i<ii;i++) { if(strcmp(stu[i].name,c)==0) { f=0;break; } } if(f==0) { for(j=i;j<ii;j++) { stu[j]=stu[j+1]; } printf("\tok,已删除\n"); ii--; } elseif(f==1) { printf("\t没有数据啦,不可删除\n"); gotom2; } } elseif(a==9) { menu(); } else { printf("\t输入错误,请重输!!\n"); gotom2; }}voidchaxun(){ inta,d,i,flag=0,w,j,f=0; charhead3[6][10]={"学号","姓名","年龄","c语言","代数","总分"};m3: printf("\t请输入查询方式:\n\t1.学号\t2.名字\t3.年龄\n"); scanf("%d",&a); if(a==1) { printf("\t请输入学号\n"); scanf("%d",&d); for(i=0;i<ii;i++) { if(stu[i].num==d) { f=1;break; } } if(f==1) { system("CLS"); puts("\t成绩信息读取中"); printf("\n"); printf("\t**********************************************************************\n\n\t"); for(j=0;j<6;j++) printf("%-10s",head3[j]); printf("\n\t"); printf("%-10d%-10s",stu[i].num,stu[i].name); printf("%-10d",stu[i].age); printf("%-10.1f",stu[i].score_C); printf("%-10.1f",stu[i].score_algebra); printf("%-10.1f",stu[i].scoreAll); printf("\n"); printf("\t**********************************************************************\n"); puts("\t是否继续操作?\n"); printf("\t1.离开系统!\n"); printf("\t2.回到主菜单!\n"); puts("\t请选择:\n"); while(flag==0) { fflush(stdin); scanf("%d",&w); getchar(); switch(w) { case1:Exit();flag=1; case2:menu();choose();flag=1;break; default:printf("\t对不起,操作无法进行!请重新选择!\n"); } } if(f==0) { printf("\t没有数据啦,不可修改\n"); gotom3; } } } elseif(a==2) { personal(); } elseif(a==3) {printf("\t请输入年龄\n"); scanf("%d",&d); system("CLS"); puts("\t成绩信息读取中"); printf("\n"); printf("\t**********************************************************************\n\n\t"); for(j=0;j<6;j++) printf("%-10s",head3[j]); printf("\n"); for(i=0;i<ii;i++) { if(stu[i].age==d) { printf("\t"); printf("%-10d%-10s",stu[i].num,stu[i].name); printf("%-10d",stu[i].age); printf("%-10.1f",stu[i].score_C); printf("%-10.1f",stu[i].score_algebra); printf("%-10.1f",stu[i].scoreAll); printf("\n"); } } printf("\t**********************************************************************\n"); puts("\t是否继续操作?\n"); printf("\t1.离开系统!\n"); printf("\t2.回到主菜单!\n"); puts("\t请选择:\n"); while(flag==0) { fflush(stdin); scanf("%d",&w); getchar(); switch(w) { case1:Exit();flag=1; case2:menu();choose();flag=1;break; default:printf("\t对不起,操作无法进行!请重新选择!\n"); } } if(f==0) { printf("\t没有数据啦,不可修改\n"); gotom3; } } else { printf("\t输入错误,请重输!!\n"); gotom3; }}/*退出系统*/voidExit(void){ system("CLS");//清屏 printf("\t**********************************************************\n\n\t"); printf("\t^*感谢使用成绩管理系统~\(≧▽≦)/~啦啦啦*^\n\n"); printf("\t\t^*罗天翔毛颖群李喆李林松组程序*^\n\n"); printf("\t\t^*编程:罗天翔\t报告:罗天翔*^\n\n"); printf("\t**********************************************************\n\n\t"); printf("\t按任意键退出\n"); getchar(); exit(0);}心得体会这次实验不但增强了我的C语言编程能力和软件组织设计能力,还让我体会到了成功后的喜悦,增强了我的动手能力。通过本次设计,使我学到了许多书本上无法学到的知识,也使我深刻体会到c语言技术应用领域的广泛。不仅让我对学过的C语言知识有了很多的巩固,同时也对C语言这一门学科产生了更大的兴趣。在做设计的初期阶段没有头绪。在图书馆里、网上查阅资料,攻克了道道难题。通过本次实践,我学到了许多东西,知道光靠书本上的东西是不够的,需额外去查资料。在克服困难的过程中,我学到了许多,特别是在课堂上学不到的东西。通过这次的院赛设计,我体会到应该掌握丰富的理论知识,理论知识是设计的前提,但同时又决不能局限于理论,要多动手才能将理论与实际工作联系起来。但是通过这次理论与实际的结合之后,认识比以前有不少提高,在C语言应用及软件设计方面都有了长足的进步。基于C8051F单片机直流电动机反馈控制系统的设计与研究基于单片机的嵌入式Web服务器的研究MOTOROLA单片机MC68HC(8)05PV8/A内嵌EEPROM的工艺和制程方法及对良率的影响研究基于模糊控制的电阻钎焊单片机温度控制系统的研制基于MCS-51系列单片机的通用控制模块的研究基于单片机实现的供暖系统最佳启停自校正(STR)调节器单片机控制的二级倒立摆系统的研究基于增强型51系列单片机的TCP/IP协议栈的实现基于单片机的蓄电池自动监测系统基于32位嵌入式单片机系统的图像采集与处理技术的研究基于单片机的作物营养诊断专家系统的研究基于单片机的交流伺服电机运动控制系统研究与开发基于单片机的泵管内壁硬度测试仪的研制基于单片机的自动找平控制系统研究基于C8051F040单片机的嵌入式系统开发基于单片机的液压动力系统状态监测仪开发模糊Smith智能控制方法的研究及其单片机实现一种基于单片机的轴快流CO〈,2〉激光器的手持控制面板的研制基于双单片机冲床数控系统的研究基于CYGNAL单片机的在线间歇式浊度仪的研制基于单片机的喷油泵试验台控制器的研制基于单片机的软起动器的研究和设计基于单片机控制的高速快走丝电火花线切割机床短循环走丝方式研究基于单片机的机电产品控制系统开发基于PIC单片机的智能手机充电器基于单片机的实时内核设计及其应用研究基于单片机的远程抄表系统的设计与研究基于单片机的烟气二氧化硫浓度检测仪的研制基于微型光谱仪的单片机系统单片机系统软件构件开发的技术研究基于单片机的液体点滴速度自动检测仪的研制基于单片机系统的多功能温度测量仪的研制基于PIC单片机的电能采集终端的设计和应用基于单片机的光纤光栅解调仪的研制气压式线性摩擦焊机单片机控制系统的研制基于单片机的数字磁通门传感器基于单片机的旋转变压器-数字转换器的研究基于单片机的光纤Bragg光栅解调系统的研究单片机控制的便携式多功能乳腺治疗仪的研制基于C8051F020单片机的多生理信号检测仪基于单片机的电机运动控制系统设计Pico专用单片机核的可测性设计研究基于MCS-51单片机的热量计基于双单片机的智能遥测微型气象站MCS-51单片机构建机器人的实践研究基于单片机的轮轨力检测基于单片机的GPS定位仪的研究与实现基于单片机的电液伺服控制系统用于单片机系统的MMC卡文件系统研制基于单片机的时控和计数系统性能优化的研究基于单片机和CPLD的粗光栅位移测量系统研究单片机控制的后备式方波UPS提升高职学生单片机应用能力的探究基于单片机控制的自动低频减载装置研究基于单片机控制的水下焊接电源的研究基于单片机的多通道数据采集系统基于uPSD3234单片机的氚表面污染测量仪的研制基于单片机的红外测油仪的研究96系列单片机仿真器研究与设计基于单片机的单晶金刚石刀具刃磨设备的数控改造基于单片机的温度智能控制系统的设计与实现基于MSP430单片机的电梯门机控制器的研制基于单片机的气体测漏仪的研究基于三菱M16C/6N系列单片机的CAN/USB协议转换器基于单片机和DSP的变压器油色谱在线监测技术研究基于单片机的膛壁温度报警系统设计基于AVR单片机的低压无功补偿控制器的设计基于单片机船舶电力推进电机监测系统基于单片机网络的振动信号的采集系统基于单片机的大容量数据存储技术的应用研究基于单片机的叠图机研究与教学方法实践基于单片机嵌入式Web服务器技术的研究及实现基于AT89S52单片机的通用数据采集系统基于单片机的多道脉冲幅度分析仪研究机器人旋转电弧传感角焊缝跟踪单片机控制系统基于单片机的控制系统在PLC虚拟教学实验中的应用研究基于单片机系统的网络通信研究与应用基于PIC16F877单片机的莫尔斯码自动译码系统设计与研究基于单片机的模糊控制器在工业电阻炉上的应用研究HYPERLINK"/detail.htm?3
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年度建筑工程施工合同索赔流程及赔偿标准规范文本
- 2025年度电子工程师研发项目合作合同
- 2025年度酒店物业管理合同规范文本
- 辽宁2024年渤海大学附属高级中学招聘人笔试历年参考题库附带答案详解
- 菏泽2025年山东菏泽医专附属医院招聘精神科住院医师2人笔试历年参考题库附带答案详解
- 湖南2025年湖南省住房和城乡建设厅所属事业单位选调笔试历年参考题库附带答案详解
- 温州2024年浙江温州苍南县质量技术监督检测院招聘食品检测工作人员笔试历年参考题库附带答案详解
- 浙江浙江省国际经济贸易学会招聘笔试历年参考题库附带答案详解
- 2025年中国宫灯罩市场调查研究报告
- 2025年中国半自动内圆切片机市场调查研究报告
- 老年护理陪护培训课件
- 酱香型白酒工厂设计
- 第3章 环境感知技术
- 牵引管道孔壁与管道外壁之间注浆技术方案
- 肛周脓肿完整版课件
- 公司(工厂)厂牌管理规定
- 《移动互联网应用开发》课程标准
- 初一语文下册:阅读理解知识点整理
- 定点医疗机构接入验收申请表
- 脓毒血症指南
- 四年级下册口算练习-减法简便计算
评论
0/150
提交评论