资源描述:
《大一下数据结构课设源代码》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、#include#include#include#include#defineMAX50typedefstructnodel{intschool;//学校编号intrecord;//项目成绩structnodel*next;//链域JSchools;typedefstruct{intitem;//项目编号Schools*firstschool;//链域指向链表中第一个节点}ITEM;typedefstruct{intz;ITEMa[MAX];//项目总数}
2、Allitems;typedefstructnode2{intitem;//该学校获奖的项目intrecord;//项目成绩structnode2*next;//链域Jltems;typedefstruct{intschool;//学校编号intscore;//学校总分intboys;//男团体总分intgirls;//女团体总分Items*firstitem;〃链域指向链表中笫一个获奖项冃的节点JSchNode;typedefstruct{intn;〃学校总数SchNodeb[MAX];}AIINode;Allitems*gl;/
3、/全局变虽AllNode*g2;〃全局变量voidfunctl(Allitems*gl,AIINode*g2)〃输入各个信息界面Schools*pl;Items*p2;jnti,j,k,m,w,h,x;pl=(Schools*)malloc(sizeof(Schools));p2=(ltems*)malloc(sizeof(ltems));if(!pl
4、
5、!p2)exit(l);prin廿(“*****输入各个项目信息*****H);printf("输入男子项目总数m:n);scanf("%d",&m);if(m<0
6、
7、
8、m>20){printfC1输入有误,m是20以内的整数,请重新输入:”);scanf(”%d”,&m);}printfC输入女子项目总数w:H);scanf(”%cT&w);if(w<0
9、
10、w>20){printfC输入错谋,w是20以内的整数,请重新输入:”);scanf(”%d”,&w);}printf("输入参加运动会的学校总数n:");scanf(“%d”,&g2・>n);if(g2->n<0
11、
12、g2->n>20){printf("输入错误,n是20以内的整数,请重新输入:”);scanf("%d,'/&g2->n);
13、}gl・>z=m+w;printf("项目编号为男了l・%d,女子%d-%d"/m,m+l/gl->z);printf("*****记录运动会成绩*****");printf("(输入0标志结束)“);for(k=l;k<=gl->z;k++){gl->a[k].item=k;gl->a[k].firstschool=NULL;}for(k=l;k<=g2->n;k++)g2->b[k].school=k;g2->b[k].firstitem=0;g2->b[k].score=0;g2->b[k].boys=0;
14、g2->b[k].girls=0;}g2->b[0].score=0;g2->b[0].boys=0;g2->b[0].girls=0;while(i!=O){printf(n项目:”);scanf(“%d”,&i);if(i!=O){printf("l.前三名2.前五名H);printfC'请选择(1-2):*');scanf(”%d”,&j);if(j!=l&&j!=2)//只能输入1和2,否则重新输入{printf「输入有误,请重新选择:”);scanf(“%cf,&j);}if(j==l)//«Z前三名{h=3;
15、//第1,2,3名得分分别为5,3,2do{printf(“第%d名八学校鳥h);scanf("%cT,&x);pl=(Schools*)malloc(sizeof(Schools));pl->school=x;p2=(ltems*)malloc(sizeof(ltems));p2->item=i;if(h==3)p2->record=pl->record=2;if(h==2)p2->record=pl->record=3;if(h==l)p2->record=pl->record=5;pl->next=gl->a[i].first
16、school;gl->a[i].firstschool=pl;p2->next=g2->b[x]-firstitem;g2->b[x].firstitem=p2;g2->b[x].score=g2->b[x].score+p2->re