64分求助,最后两个没过去
  • 板块P1104 生日
  • 楼主ikun11
  • 当前回复0
  • 已保存回复0
  • 发布时间2023/1/7 21:28
  • 上次更新2023/10/24 05:14:32
查看原帖
64分求助,最后两个没过去
919276
ikun11楼主2023/1/7 21:28
#include <stdio.h>
#include <stdlib.h>
struct student
{
    char s[25];
    int y,m,d;
}stu[102];
int compare(const void *e1, const void *e2)
{
    struct student *v1 = (struct student *)e1;
    struct student *v2 = (struct student *)e2;
	if( (v1->y > v2->y)||(v1->y==v2->y&&v1->m>v2->m)||(v1->y==v2->y&&v1->m==v2->m&&v1->d>v2->d) ) return 1;
	return -1;
}

int main()
{
    int n;
    int i,j;
    double sum=0.0;
    scanf("%d",&n);
    for(i=0;i<n;i++)
    {
        scanf("%s%d%d%d",stu[i].s,&stu[i].y,&stu[i].m,&stu[i].d);
    }
    qsort(stu,n, sizeof(stu[0]), compare);

    for(i=0;i<n;i++)
        printf("%s\n",stu[i].s);

    return 0;
}

2023/1/7 21:28
加载中...