学生的成绩管理系统的代码(c语言编写)_第1页
学生的成绩管理系统的代码(c语言编写)_第2页
学生的成绩管理系统的代码(c语言编写)_第3页
学生的成绩管理系统的代码(c语言编写)_第4页
学生的成绩管理系统的代码(c语言编写)_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

实用标准文案C程序 学生管理系统/*Note:YourchoiceisCIDE*/#include "stdio.h"#include"stdlib.h"#include"string.h"typedef struct student//定义学生{charname[10];intnumber;charsex[2];intmath;integlish;intclanguge;intaverage;}student;typedef struct unit//定义接点{studentdate;精彩文档实用标准文案structunit*next;}unit;unit*build()//建立链表并返回指针{unit*p;if((p=(unit*)malloc(sizeof(unit)))==NULL){printf("=>初始化失败!");return0;}else{p->next=NULL;p->date.number=0;//头结点存放学生人数printf("初始化成功!\n");return p;}}voidadd(unit *head)//增加学生{精彩文档实用标准文案unit*p,*q;intm,n=0;q=head->next;p=(unit*)malloc(sizeof(unit));printf("=>请输入新生姓名!\n");gets(p->);fflush(stdin);printf("=>请输入学号!\n");while(n==0){scanf("%d",&m);fflush(stdin);if(q==NULL)n=1;while(q){if(q->date.number==m){printf("=>你输入的学号与已有同学的学号相同,请重新输入!\n");q=head->next;break;}else精彩文档实用标准文案{q=q->next;if(q==NULL)n=1;}}}p->date.number=m;printf("=>请输入性别!\n");gets(p->date.sex);fflush(stdin);printf("=>请输入数学成绩\n");scanf("%d",&m);fflush(stdin);p->date.math=m;printf("=>请输入英语成绩\n");scanf("%d",&m);fflush(stdin);p->date.eglish=m;printf("=>请输入c语言成绩\n");scanf("%d",&m);fflush(stdin);p->date.clanguge=m;p->date.average=(p->date.math+p->date.eglish+p->date.clanguge);q=head->next;head->next=p;精彩文档实用标准文案p->next=q;head->date.number++;}voiddeletion(unit *head)//删除一名学生{unit*p=head->next,*q=head;charN[10];printf("=>请输入你想删除的学生姓名! \n");gets(N);fflush(stdin);if(p==NULL)printf("=>系统无学生可删除!\n");while(p){if(strcmp(p->,N)==0){q->next=p->next;head->date.number--;printf("=>删除%s成功!\n",p->);free(p);break;精彩文档实用标准文案}else{p=p->next;q=q->next;if(p==NULL)printf("=>你要删除的学生不存在,删除失败!\n");}}}intdisplay(unit *head)//显示学生信息{unit*p=head->next;intm,n=0;charN[10];if(p==NULL){printf("=>系统无学生!\n");return 0;精彩文档实用标准文案}while(n==0){printf("******************************************************************************\n" );printf("=>请选择你的操作!\n");printf("=>\t\t\t1. 显示所有\t2.按姓名查找\n\t\t\t3. 按学号查找\t4.返回主菜单\n");scanf("%d",&m);fflush(stdin);switch(m){case1:printf("\n=> 该系统拥有%d名学生!\n\n",head->date.number);p=head->next;printf("\t姓名\t学号\t性别\t数学\t英语\tc语言\t综合\n\n");while(p){printf("\t%s\t%d\t%s\t%d\t%d\t%d\t%d\n" ,p->,p->date.精彩文档实用标准文案number,p->date.sex,p->date.math,p->date.eglish,p->date.clanguge,p->date.average);p=p->next;}break;case2:printf("=>请输入查找姓名!\n");gets(N);fflush(stdin);p=head->next;while(p){if(strcmp(p->,N)==0){printf("\t姓名\t学号\t性别\t数学\t英语\tc语言\t综合\n");printf("\t%s\t%d\t%s\t%d\t%d\t%d\t%d\n" ,p->,p->date.number,p->date.sex,p->date.math,p->date.eglish,p->date.clanguge,p->date.average);break;精彩文档实用标准文案}else{p=p->next;if(p==NULL)printf("=>你要查的学生不存在! ");}}break;case3:printf( "=>请输入查找学号!\n");scanf("%d",&m);fflush(stdin);p=head->next;while(p){if(p->date.number==m){printf("\t姓名\t学号\t性别\t数学\t英语\tc语言\t综合\n");printf("\t%s\t%d\t%s\t%d\t%d\t%d\t%d\n" ,p->,p->date.number,p->date.sex,p->date.math,精彩文档实用标准文案p->date.eglish,p->date.clanguge,p->date.average);break;}else{p=p->next;if(p==NULL)printf("=>你要查的学生不存在! \n");}}break;case4:n=1;break;}}return 1;}intrange(unit *head)//排序精彩文档实用标准文案{unit*p=head,*q=head->next;intn,i,m=head->date.number;printf("*******************************************************************************\n" );printf("\t\t\t1. 按学号\t2.按成绩\n\n");printf("=>请选择操作!\n》");scanf("%d",&n);fflush(stdin);if(q==NULL){printf("=>无学生可排序!\n");return 0;}switch(n){case2:for(i=0;i<m;i++)//按总分排序{p=head;q=head->next;while(q->next){if((q->date.average)<(q->next->date.average)){精彩文档实用标准文案p->next=q->next;p=p->next;q->next=p->next;p->next=q;}else{p=p->next;q=q->next;}}}break;case1:for(i=0;i<=m;i++)//按学号排序{p=head;q=head->next;while(q->next){if((q->date.number)>(q->next->date.number)){p->next=q->next;p=p->next;精彩文档实用标准文案q->next=p->next;p->next=q;}else{p=p->next;q=q->next;}}}break;}printf("=>排序成功!\n");return 1;}voidmenu(){printf("\n********************************* 主菜单***************************************\n" );精彩文档实用标准文案printf("\t\t\t1. 新建系统\t2.添加学生\n\t\t\t3. 删除学生\t4.查看信息\n\t\t\t5. 排列顺序\t6.读取信息\n\t\t\t7. 保存信息\t8.退出系统\n");printf("=>请选择你的操作!\n");}intsave(unit *head)//保存{FILE*fp;unit*p;p=head;if((fp=fopen( 学生","wb+"))==NULL){printf("=>保存失败!");return0;}while(p){fwrite(&(p->date),sizeof(student),1,fp);p=p->next;}printf("=>保存成功!");精彩文档实用标准文案fclose(fp);return 1;}unit*read()//读入系统学生信息{inti;unit*p,*q,*head;FILE*fp;if((head=(unit*)malloc(sizeof(unit)))==NULL){printf("=>开辟空间失败!");exit(1);}else{head->next=NULL;head->date.number=0;//头结点存放学生人数}q=head;if((fp=fopen( 学生","rb"))==NULL)精彩文档实用标准文案{printf("=>系统无学生!\n");return 0;}fread(&(q->date),sizeof(student),1,fp);for(i=0;i<head->date.number;i++){if((p=(unit*)malloc(sizeof(unit)))==NULL){printf("=>读值失败!");exit(1);}fread(&(p->date),sizeof(student),1,fp);p->next=q->next;q->next=p;}fclose(fp);return head;}voidmain(){intm=0,n,i;unit*head;精彩文档实用标准文案printf("********************************************************************************\n\n" );printf("\t\t\t* 欢迎使用学生成绩管

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论