64分救,考虑到生日相同还是不行
  • 板块P1104 生日
  • 楼主JaneHan
  • 当前回复2
  • 已保存回复2
  • 发布时间2023/11/15 17:17
  • 上次更新2023/11/15 19:18:57
查看原帖
64分救,考虑到生日相同还是不行
1106359
JaneHan楼主2023/11/15 17:17
#include <stdio.h>
#define N 20

int main() {
	int n,sum;
	scanf("%d",&n);
	
	struct student{
		char s[N];
		int y;
		int m;
		int d;
	};
	struct student stu[101],temp;
	
	int i,j,t;
	for(i=0;i<n;i++){
		scanf("%s %d %d %d",&stu[i].s,&stu[i].y,&stu[i].m,&stu[i].d);
		if(stu[i].y<1960||stu[i].y>2020) return 0;
	}
	
	for(i = 0; i < n - 1; i++) {
	    for(j = 0; j < n - i - 1; j++) {
	        if((stu[j].y > stu[j + 1].y)||
			   (stu[j].y == stu[j + 1].y && stu[j].m >=stu[j + 1].m)||
			   (stu[j].y == stu[j + 1].y && stu[j].m == stu[j + 1].m && stu[j].d >= stu[j + 1].d)) {
		        temp = stu[j];
		        stu[j] = stu[j + 1];
		        stu[j + 1] = temp;
	        }
	    }
	}


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

哪位大佬帮忙看看行吗

2023/11/15 17:17
加载中...