#include <stdio.h>
#include <string.h>
struct inf{
char name[11];
int birth;
char phone[18];
};
int main(){
int n;
scanf("%d",&n);
struct inf man[n],temp;
for(int i=0;i<n;i++){
scanf("%s %d %s",man[i].name,&man[i].birth,man[i].phone);
getchar(); //收集回车符
}
for(int i=0;i<n-1;i++){
for(int j=n-1;j>i;j--){
if(man[j].birth<man[j-1].birth){ //出身日期越小,年龄越大
temp=man[j]; //这三行简化以下的注释代码
man[j]=man[j-1];
man[j-1]=temp;
// strcpy(temp.name,man[j].name);
// strcpy(man[j].name,man[j-1].name);
// strcpy(man[j-1].name,temp.name);
// temp.birth=man[j].birth;
// man[j].birth=man[j-1].birth;
// man[j-1].birth=temp.birth;
// temp.birth=man[j].birth;
// strcpy(temp.phone,man[j].phone);
// strcpy(man[j].phone,man[j-1].phone);
// strcpy(man[j-1].phone,temp.phone);
}
}
}
for(int i=0;i<n;i++){
printf("%s %d %s\n",man[i].name,man[i].birth,man[i].phone);
}
return 0;
}
// ^
//1995 05 10
//1995 0 12
//1997 12 13
//1997 10 10
习题9-5 通讯录排序 (20 分)
最新推荐文章于 2022-05-06 19:00:16 发布