永发信息网

求在VC++6.0上能运行的程序:校级运动会管理系统

答案:2  悬赏:80  手机版
解决时间 2021-02-09 16:46
求在VC++6.0上能运行的程序:校级运动会管理系统
最佳答案
3.4 源程序代码
#include
#include
#include
#include
#define n 3//学校数目
#define m 2//男子项目数目
#define w 1//女子项目数目
#define null 0

typedef struct
{
int itemnum; //项目编号
int top; //取名次的数目
int range[5]; //名次
int mark[5]; //分数
}itemnode; //定义项目结点的类型

typedef struct
{
int dai;
int schoolname;
int schoolnum; //学校编号
int score; //学校总分
int mscore; //男团体总分
int wscore; //女团体总分
itemnode c[m+w]; //项目数组
}headnode;//定义头结点类型

headnode h[n];//定义一个头结点数组

void inputinformation() //输入信息,建立系统
{
int i,j,k,s;
for(i=0;i {
h[i].score=0;
h[i].mscore=0;
h[i].wscore=0;
} //初始化头结点
for(i=0;i {
printf("*****学校名称:");
scanf("%s",&h[i].schoolname);
printf("*****学校编号:");
scanf("%d",&h[i].schoolnum); //输入头结点信息
for(j=0;j {
printf("*****项目编号:");
scanf("%d",&h[i].c[j].itemnum);
printf("*****取前3名or前5名:");
scanf("%d",&h[i].c[j].top);
printf("*****获得几个名次:");
scanf("%d",&k); //输入项目信息
for(s=0;s<5;s++)
h[i].c[j].range[s]=0, h[i].c[j].mark[s]=0; //初始化排名和分数
for(s=0;s {
printf("*****名次:");
scanf("%d",&h[i].c[j].range[s]); //输入所获名次信息
if(h[i].c[j].top==3)
switch(h[i].c[j].range[s])
{
case 0: h[i].c[j].mark[s]=0; break;
case 1: h[i].c[j].mark[s]=5; break;
case 2: h[i].c[j].mark[s]=3; break;
case 3: h[i].c[j].mark[s]=2; break;
}
else
switch(h[i].c[j].range[s])
{
case 0: h[i].c[j].mark[s]=0; break;
case 1: h[i].c[j].mark[s]=7; break;
case 2: h[i].c[j].mark[s]=5; break;
case 3: h[i].c[j].mark[s]=3; break;
case 4: h[i].c[j].mark[s]=2; break;
case 5: h[i].c[j].mark[s]=1; break;
}

h[i].score=h[i].score+h[i].c[j].mark[s];
//按取前三名还是取前五名分别记分
if(j<=m-1)
h[i].mscore=h[i].mscore+h[i].c[j].mark[s];
//是男子项目则记到男子分数里面去
else
h[i].wscore=h[i].wscore+h[i].c[j].mark[s];
//是女子项目则记到女子项目里面去
}
printf("\n");
}
}
}

void output() //输出函数
{
int choice,i,j,k;

int sign;
do
{
printf("*******************1.按学校编号输出.*******************\n");
printf("*******************2.按学校名称输出.*******************\n");
printf("*******************3.按学校总分输出.*******************\n");
printf("*******************4.按男团总分输出.*******************\n");
printf("*******************5.按女团总分输出.*******************\n");
printf("\n\n******************* 请选择编号*************************\n\n:");
scanf("%d",&choice);
switch(choice)
{
case 1:
printf("学校编号 学校名称 学校总分 男团总分 女团总分\n");
for(i=0;i {
printf("%8d %8s %8d %8d %8d\n",h[i].schoolnum,h[i].schoolname,h[i].score,h[i].mscore,h[i].wscore);

} //按编号顺序输出
break;

case 2:
printf("学校名称 学校编号 学校总分 男团总分 女团总分\n");
for(i=0;i {
printf("%8s %8d %8d %8d %8d\n",h[i].schoolname,h[i].schoolnum,h[i].score,h[i].mscore,h[i].wscore);

} //按学校名称输出
break;

case 3:
printf("学校名次 学校总分 学校名称 学校编号 男团总分 女团总分\n");
for(i=0;i {
h[i].dai=h[i].score;
}

for(i=0;i {
for(j=0;j if(h[j].dai {
k=h[j].dai;h[j].dai=h[j+1].dai;h[j+1].dai=k;
}
}

for(i=0;i {
for(j=0;j if(h[j].score==h[i].dai)
printf("第%d名 %12d %8s %8d %8d %8d \n",i+1,h[j].score,h[j].schoolname,h[j].schoolnum,h[j].mscore,h[j].wscore);
}
//按学校总分输出
break;

case 4:
printf("学校名次 男团总分 学校名称 学校编号 学校总分 女团总分\n");
for(i=0;i h[i].dai=h[i].mscore;
for(i=0;i {
for(j=0;j if(h[j].dai k=h[j].dai;h[j].dai=h[j+1].dai;h[j+1].dai=k;
}
for(i=0;i {
for(j=0;j if(h[j].mscore==h[i].dai)
printf("第%d名 %12d %8s %8d %8d %8d \n",i+1,h[j].mscore,h[j].schoolname,h[j].schoolnum,h[j].score,h[j].wscore);
}
//按男团总分输出
break;

case 5:
printf("学校名次 女团总分 学校名称 学校编号 学校总分 男团总分\n");
for(i=0;i h[i].dai=h[i].wscore;
for(i=0;i {
for(j=0;j if(h[j].dai k=h[j].dai;h[j].dai=h[j+1].dai;h[j+1].dai=k;
}
for(i=0;i {
for(j=0;j if(h[j].wscore==h[i].dai)
printf("第%d名 %12d %8s %8d %8d %8d \n",i+1,h[j].mscore,h[j].schoolname,h[j].schoolnum,h[j].score,h[j].mscore);
}
break; //按女团总分输出
}
printf("请选择 2 继续,0 跳出\n");
scanf("%d",&sign);
}while(sign==2); //循环执行输出语句
}

void inquiry() //查询函数
{
int choice;
int i,j,k,s;
printf("\n*****1:按学校编号查询\n");
printf("\n*****2:按项目编号查询\n");
printf("\n\n*****请选择查询方式:"); //提供两种查询方式
scanf("%d",&choice);
switch(choice)
{
case 1:
do
{
printf("要查询的学校编号:");
scanf("%d",&i);
if(i>n)
printf("错误:这个学校没有参加此次运动会!\n\n\n");
else
{
printf("要查询的项目编号:");
scanf("%d",&j);
if(j>m+w||j==0)
printf("此次运动会没有这个项目\n\n\n");
//学校编号超出范围,则输出警告
else
{
printf("这个项目取前 %d名,该学校的成绩如下:\n", h[0].c[j-1].top);
for(k=0;k<5;k++)
if(h[i-1].c[j-1].range[k]!=0)
printf("名次:%d\n",h[i-1].c[j-1].range[k]);
//输出要查询学校项目的成绩
}
}
printf("请选择 2 继续 , 0 跳出\n");
scanf("%d",&s);
printf("\n\n\n");
}while(s==2); //循环执行输出语句
break;

case 2:
do
{
printf("要查询的项目编号:");
scanf("%d",&s);
if(s>m+w||s==0)
printf("此次运动会不包括这个项目.\n\n\n");
//项目编号超出范围则输出警告
else
{
printf("该项目取前 %d名,取得名次的学校\n",h[0].c[s-1].top);
for(i=0; i for(j=0;j<5;j++)
if(h[i].c[s-1].range[j]!=0)
printf("学校编号:%d,名次:%d\n",h[i].schoolnum,
h[i].c[s-1].range[j]);
} //输出该项目取得名次学校的成绩
printf("\n\n\n继续 2,跳出 0\n");
scanf("%d",&i);
printf("\n\n\n");

}while(i==2);
break;
}
}

void main()
{
int choice;
printf("======================欢迎使用======================\n"); printf("\n\n*****************运动会分数统计系统********************\n");
printf("\n\n********************1.输入信息*************************\n");
printf("********************2.输出信息*************************\n");
printf("********************3.查询信息*************************\n");
printf("********************4.退出系统*************************\n\n\n");
printf("================================================\n\n");
printf("********请选择要实现步骤的编号:\n\n");
scanf("%d",&choice);

switch(choice)
{
case 1:
inputinformation();main();
case 2:
output();main();
case 3:
inquiry();main();
case 4:
exit(0);
default:
printf("输入错误请重新输入!");

}
}
全部回答
我这是源代码已经调试过了,在VC 上运行成功了。 #include
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
金马俱乐部怎么去啊,我要去那办事
大坝子地址有知道的么?有点事想过去
借款人在还款期限内死亡、宣告死亡、宣告失踪
快乐大本营最新一期片尾曲
无限健身怎么去啊,我要去那办事
求一部日本动画片,就是讲一对变态父子劫持了
食客小馆怎么去啊,有知道地址的么
the flight for shanghai leaves at 8:30 tom
XP台式液晶电脑的亮度与对比度设置几对眼睛最
海宁皮草生活馆在什么地方啊,我要过去处理事
顾拜旦现代五项赛事中心-怎么去啊,我要去那
干式双离合变速器升降挡咔嚓响,顿挫感明显,
泌乳素高,吃中药多久算一个疗程
一买家淘宝上购买衣服 把衣服洗烂了 谁的责任
808火疗地址在什么地方,想过去办事
推荐资讯
佳驿停车场(东莱街与北大街交叉口南100米佳驿
新村河在哪里啊,我有事要去这个地方
旺旺批发部地址在哪,我要去那里办事
三国群英传7 桃园结义怎么结义
名仕造型会所地址在哪,我要去那里办事,
PS里字输入后变反方向
永惠平价水果蔬菜在什么地方啊,我要过去处理
陶鲁超市中铁国际城店地址在什么地方,想过去
颐美汇SPA连锁地址在哪,我要去那里办事
爱品客蛋糕坊在什么地方啊,我要过去处理事情
下午6点半在发薪贷提款,多久放款到账?
丹东有心理咨询的吗?想找个专业的咨询中心。
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?