#import <Foundation/Foundation.h>
typedef struct Data{int year;//存储年份
int month;//存储月份
int day;//存储天
}data;
void printAllStuInfo( Stu a[], int count){for (int i = 0; i < count; i++) {
printf("name=%s ",a[i].name);
printf("age=%d ",a[i].age);
printf("score=%.2f",a[i].score);
printf("\n");
}
}
//编程按学生的成绩升序排序,
void sortOfScore(Stu a[],int count){
for (int i =0; i < count -1;i++) {
for (int j =0; j < count -1 -i; j++) {
if (a[j].score > a[j+1].score) {
Stu temp = a[j];
a[j] = a[j+1];
a[j+1]= temp;
}
}
}
}
//按学生的姓名降序排序,
void sortOfName(Stu a[],int count){
for (int i =0; i < count -1;i++) {
for (int j =0; j < count -1 -i; j++) {
if (strcmp(a[j].name, a[j+1].name) > 0) {
Stu temp = a[j];
a[j] = a[j+1];
a[j+1]= temp;
}
}
}
}
//按年龄从低到高排序
void sortOfAge(Stu a[],int count){
for (int i =0; i < count -1;i++) {
for (int j =0; j < count -1 -i; j++) {
if (a[j].age > a[j+1].age) {
Stu temp = a[j];
a[j] = a[j+1];
a[j+1]= temp;
}
}
}
}
int main(int argc, const char * argv[])
{
Stu student[5] = {
{"zhangsan",23,88},
{"lisi",21,86},
{"wangwu",18,99},
{"zhaoliu",22,66},
{"qianqi",18,77}
};
printf("排序前\n");
printAllStuInfo(student,5);
//编程按学生的成绩升序排序,
printf("\n按成绩排序\n");
sortOfScore(student,5);
printAllStuInfo(student,5);
//按学生的姓名降序排序,
printf("按姓名排序\n");
sortOfName(student,5);
printAllStuInfo(student,5);
//按年龄从低到高排序
printf("按年龄排序\n");
sortOfAge(student,5);
printAllStuInfo(student,5);
return 0;
}