您的位置:首页 > 其它

116.排列学生结构体数据

2015-06-29 15:35 417 查看
学生的记录由学号和成绩组成,N名学生的数据已在主函数中放入结构体数组s中,函数fun的功能是:按分数的高低排列学生的记录,高分在前。

#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#define N 16
typedef struct
{
char num[10];
int s;
}STREC;
void fun(STREC a[])
{
int i, j;
STREC t;
for (i = 0;i < N;i++)
for (j = i;j < N;j++)
if (a[i].s < a[j].s)
{
t = a[i];
a[i] = a[j];
a[j] = t;
}
}
int main()
{
STREC s
= { {"GA005",85}, {"GA003",76} ,
{"GA002",69},{"GA004",85},{"GA001",91},
{"GA007",72} ,{"GA008",64},{"GA006",87},
{"GA015",85},{"GA013",91},{"GA012",64},
{"GA014",91},{"GA011",66},{"GA017",64},
{"GA018",64},{"GA016",72} };
int i;
fun(s);
printf("The data after asorted:\n");
for (i = 0;i < N;i++)
{
if (i % 4 == 0)
printf("\n");
printf("  %s  %4d  ", s[i].num, s[i].s);
}
system("pause");
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: