解题思路
:
1.定义一个结构体存储每个学生的性别和姓名
2.分两步
,以n
/2为界限
,大于等于n
/2为成绩差的
,倒叙
;小于n
/2
为成绩好的
,顺序
.
3.为了区分成绩差的学生是否已经输出过了
,可以令其性别值为
-1,代表已经输出过了
#include <stdio.h>
struct st
{
int se
;
char na
[10];
}N
[100];
int main()
{
int n
;
scanf("%d",&n
);
for(int i
=0;i
<n
;i
++)
scanf("%d %s",&N
[i
].se
,N
[i
].na
);
for(int i
=0;i
<n
/2;i
++)
{
for(int j
=n
-1;j
>=n
/2;j
--)
{
if((N
[i
].se
+N
[j
].se
==1)&&N
[j
].se
>=0)
{
N
[j
].se
=-1;
printf("%s %s\n",N
[i
].na
,N
[j
].na
);
break;
}
}
}
return 0;
}
转载请注明原文地址: https://lol.8miu.com/read-38369.html