编写程序对校运会百米 8 名运动员成绩排序,并按照快慢顺序输出运动员的号码和 成绩,(运动员的号码是整数和
答案:4 悬赏:80
解决时间 2021-02-13 01:47
- 提问者网友:✐ۖ﹏ℳ๓北风
- 2021-02-12 09:50
编写程序对校运会百米 8 名运动员成绩排序,并按照快慢顺序输出运动员的号码和 成绩,(运动员的号码是整数和
最佳答案
- 二级知识专家网友:如果这是命
- 2021-02-12 11:13
#include<stdio.h>
int main()
{
int student[8][2];
int temp1,temp2;
for(int n=1;n<=8;n++)
{
printf("请输入第%d个运动员的号码和成绩,并以空格分开:",n);
scanf("%d %d",&student[n-1][0],&student[n-1][1]);
}
for(int m=0;m<7;m++)
{
for(int j=7;j>m;j--)
{
if(student[j][1]<student[j-1][1])
{
temp1=student[j][1], temp2=student[j][0];
student[j][1]=student[j-1][1],student[j][0]=student[j-1][0];
student[j-1][1]= temp1, student[j-1][0]= temp2;
}
}
}
for(int n=0;n<8;n++)
{
printf("运动员号码:%d,成绩:%d\n",student[n][0],student[n][1]);
}
return 0;
}
编译环境:vs2012
输出结果如下:
请输入第1个运动员的号码和成绩,并以空格分开:1002 23
请输入第2个运动员的号码和成绩,并以空格分开:1005 12
请输入第3个运动员的号码和成绩,并以空格分开:1256 30
请输入第4个运动员的号码和成绩,并以空格分开:1152 15
请输入第5个运动员的号码和成绩,并以空格分开:1512 15
请输入第6个运动员的号码和成绩,并以空格分开:1516 10
请输入第7个运动员的号码和成绩,并以空格分开:1692 5
请输入第8个运动员的号码和成绩,并以空格分开:1511 24
运动员号码:1692,成绩:5
运动员号码:1516,成绩:10
运动员号码:1005,成绩:12
运动员号码:1152,成绩:15
运动员号码:1512,成绩:15
运动员号码:1002,成绩:23
运动员号码:1511,成绩:24
运动员号码:1256,成绩:30
请按任意键继续. . .
int main()
{
int student[8][2];
int temp1,temp2;
for(int n=1;n<=8;n++)
{
printf("请输入第%d个运动员的号码和成绩,并以空格分开:",n);
scanf("%d %d",&student[n-1][0],&student[n-1][1]);
}
for(int m=0;m<7;m++)
{
for(int j=7;j>m;j--)
{
if(student[j][1]<student[j-1][1])
{
temp1=student[j][1], temp2=student[j][0];
student[j][1]=student[j-1][1],student[j][0]=student[j-1][0];
student[j-1][1]= temp1, student[j-1][0]= temp2;
}
}
}
for(int n=0;n<8;n++)
{
printf("运动员号码:%d,成绩:%d\n",student[n][0],student[n][1]);
}
return 0;
}
编译环境:vs2012
输出结果如下:
请输入第1个运动员的号码和成绩,并以空格分开:1002 23
请输入第2个运动员的号码和成绩,并以空格分开:1005 12
请输入第3个运动员的号码和成绩,并以空格分开:1256 30
请输入第4个运动员的号码和成绩,并以空格分开:1152 15
请输入第5个运动员的号码和成绩,并以空格分开:1512 15
请输入第6个运动员的号码和成绩,并以空格分开:1516 10
请输入第7个运动员的号码和成绩,并以空格分开:1692 5
请输入第8个运动员的号码和成绩,并以空格分开:1511 24
运动员号码:1692,成绩:5
运动员号码:1516,成绩:10
运动员号码:1005,成绩:12
运动员号码:1152,成绩:15
运动员号码:1512,成绩:15
运动员号码:1002,成绩:23
运动员号码:1511,成绩:24
运动员号码:1256,成绩:30
请按任意键继续. . .
全部回答
- 1楼网友:怪咖小青年
- 2021-02-12 15:03
不会!
- 2楼网友:末路丶一枝花
- 2021-02-12 13:48
struct Info //运动员信息
{
int nID; //运动员编号
char str[100];//名字
double fTime;//跑完全程用时
}
不需要二维数组,一维就行
Info player[8];//8个选手
。。。
排序,直接使用冒泡排序,排序时要记得交换结构体
排序完就输出数组的每个元素就行
- 3楼网友:单身小柠`猫♡
- 2021-02-12 12:33
你好!
struct Info //运动员信息
{
int nID; //运动员编号
char str[100];//名字
double fTime;//跑完全程用时
}
不需要二维数组,一维就行
Info player[8];//8个选手
。。。
排序,直接使用冒泡排序,排序时要记得交换结构体
排序完就输出数组的每个元素就行
仅代表个人观点,不喜勿喷,谢谢。
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯