欢迎来到天天文库
浏览记录
ID:6325028
大小:42.00 KB
页数:25页
时间:2018-01-10
《一个学生成绩管理系统c语言源代码》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、一个学生成绩管理系统c源代码#include#include#include/*班级成绩管理*/#defineERROR0#defineOK1#defineK9charkm[K][20];/*单链表存储结构*/typedefstructLNode{longID;charname[10];charsex[2];intage;doublecj[K];structLNode*next;}*LinkList;charname[10],sex[2],k[20];doublec;inti,x,age,ks;staticin
2、ty;structLNodee;longid;/*创建一个带头结点的空链表*/LinkListcreate(void){LinkListL;L=(LinkList)malloc(sizeof(structLNode));if(L!=NULL)L->next=NULL;returnL;}/*返回平均成绩*/doublepj(doublecj[K]){inti;doublepj=0;for(i=0;i;pj/=K;returnpj;}/*返回结点数*/intnode(LinkListp){intj=0;while(
3、p->next){p=p->next;++j;}returnj;}/*标题*/voidbt(){printf("ID号t姓名t性别t年龄t");for(i=0;iID);printf("%st",p->name);printf("%st",p->sex);printf("%dt",p->age);for(i=0;i4、I++)PRINTF("%FT",P->cj);printf("%f",pj(p->cj));}/*输出全部信息*/intall(LinkListp){intj=0;bt();while(p->next){p=p->next;put(p);++j;}printf("共有%d人",j);returnOK;}/*输出全部信息---按编号*/intidall(LinkListp,longD){intj=0;bt();while(p->next){p=p->next;if(p->ID==D){put(p);++j;}5、}printf("共有%d人",j);returnOK;}/*输出全部信息---按姓名*/intnameall(LinkListp,charname[10]){intj=0;bt();while(p->next){p=p->next;if(p->name==name){put(p);++j;}}printf("共有%d人",j);returnOK;}/*输出全部信息---按年龄*/intageall(LinkListp,intage){intj=0;bt();while(p->next){p=p->next;i6、f(age==p->age){put(p);++j;}}printf("共有%d人",j);returnOK;}/*输出全部信息---按性别*/intsexall(LinkListp,charsex[2]){intj=0;bt();while(p->next){p=p->next;if(p->sex==sex){put(p);++j;}}printf("共有%d人",j);returnOK;}/*输出全部信息---按成绩*/intcjall(LinkListp,intk,doublecj)/*k:第几门科目cj7、:大于等于这个分数*/{intj=0;bt();while(p->next){p=p->next;if(p->cj[k]>=cj){put(p);++j;}}printf("共有%d人",j);returnOK;}/*获取ID的信息返回给对象e---获取信息*/intGetdata(LinkListL,longD,structLNodee){structLNode*p=L->next;inti;while(p8、9、p->ID!=D)p=p->next;if(!p)returnERROR;e.ID=p->ID;e.10、age=p->age;for(i=0;icj;for(i=0;i<10;i++)e.name=p->name;for(i=0;i<2;i++)e.sex=p->sex;returnOK;}/*将对象e的信息插入表---添加*/intInsert(LinkListp,structLNodee){LinkLists;s=(LinkList)malloc(siz
4、I++)PRINTF("%FT",P->cj);printf("%f",pj(p->cj));}/*输出全部信息*/intall(LinkListp){intj=0;bt();while(p->next){p=p->next;put(p);++j;}printf("共有%d人",j);returnOK;}/*输出全部信息---按编号*/intidall(LinkListp,longD){intj=0;bt();while(p->next){p=p->next;if(p->ID==D){put(p);++j;}
5、}printf("共有%d人",j);returnOK;}/*输出全部信息---按姓名*/intnameall(LinkListp,charname[10]){intj=0;bt();while(p->next){p=p->next;if(p->name==name){put(p);++j;}}printf("共有%d人",j);returnOK;}/*输出全部信息---按年龄*/intageall(LinkListp,intage){intj=0;bt();while(p->next){p=p->next;i
6、f(age==p->age){put(p);++j;}}printf("共有%d人",j);returnOK;}/*输出全部信息---按性别*/intsexall(LinkListp,charsex[2]){intj=0;bt();while(p->next){p=p->next;if(p->sex==sex){put(p);++j;}}printf("共有%d人",j);returnOK;}/*输出全部信息---按成绩*/intcjall(LinkListp,intk,doublecj)/*k:第几门科目cj
7、:大于等于这个分数*/{intj=0;bt();while(p->next){p=p->next;if(p->cj[k]>=cj){put(p);++j;}}printf("共有%d人",j);returnOK;}/*获取ID的信息返回给对象e---获取信息*/intGetdata(LinkListL,longD,structLNodee){structLNode*p=L->next;inti;while(p
8、
9、p->ID!=D)p=p->next;if(!p)returnERROR;e.ID=p->ID;e.
10、age=p->age;for(i=0;icj;for(i=0;i<10;i++)e.name=p->name;for(i=0;i<2;i++)e.sex=p->sex;returnOK;}/*将对象e的信息插入表---添加*/intInsert(LinkListp,structLNodee){LinkLists;s=(LinkList)malloc(siz
此文档下载收益归作者所有