- 定义一个学生结构体,包含结构体成员:身高,姓名,成绩;定义一个结构体数组有7个成员,要求终端输入结构体成员的值,根据学生成绩,进行冒泡排序。
#include <stdio.h> #include <string.h> typedef struct students { float high; char name[10]; float grade; }stu; int main(int argc, const char *argv[]) { stu a[7]; stu temp; int i,j; for(i=0;i<7;i++) { printf("请输入%d个学生的身高 姓名 成绩:\n",i+1); scanf("%f %s %f",&a[i].high,a[i].name,&a[i].grade); } for(i=0;i<6;i++) { for(j=0;j<6-i;j++) { if(a[j].grade<a[j+1].grade) { temp = a[j]; a[j] = a[j+1]; a[j+1] = temp; } } } for(int i=0;i<7;i++) { printf("%.2f %s %.2f\n",(a+i)->high,a[i].name,a[i].grade); } return 0; }
- 思维导图