编程题:
某公司有10个员工,每个员工的纪录信息包括:员工号和年终奖金两项。请编程按照年终奖金由高到底的进行排序输出,并输出员工的其他相关信息。输出格式如下:
序号 员工号 奖金(从高到低)
【要求】(1)排序过程用函数实现;
(2)在主函数main中调用该函数,输出结果。
typedef struct _worker
{
int nid;
float money;
}worker;
void sort(worker *p,int n)
{
for(int i=0;i<n-1;i++)
for(int j=0;j<n-i-1;j++)
{
if(p[j].money < p[j+1].money)
{
worker w = p[j];
p[j] = p[j+1];
p[j+1] = w;
}
}
}
void main()
{
worker w[10];
int i;
for(i=0;i<10;i++)
scanf("%d %f",&w[i].nid,&w[i].money);
sort(w,10);
printf("序号\t员工号\t奖金\n");
for(i=0;i<10;i++)
printf("%d\t%d\t%.2f\n",i+1,w[i].nid,w[i].money);
}
您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~
如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~
ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632