结构体数组排序 (学生信息 按成绩排序 )
2017-08-26 21:27
1871 查看
/*
name:学生信息结构体 按总分排序 (降序)
*/
#include<stdio.h>
typedef struct{//结构体 定义时尽量放main()外面---方便
int grade;
int age;
char name[10];/*其他信息就不列举了*/
}Student;
int main()
{ int i,j;
Student temp;
Student student[3]={/*分成多条初始化--- 清晰*/
{600,18,"小明"},
{550,19,"小红"},
{700,20,"tom"},
} ;
/*用结构体指针---提高效率*/
/*冒泡排序*/
Student* p=student;
for(i=1;i<=2;i++)
{
for(j=0;j<=3-i-1;j++)//大-->小
{
if( (p+j)->grade < (p+j+1)->grade)
{
temp=*(p+j);
*(p+j) = *(p+j+1);
*(p+j+1)= temp;//注意 temp 的类型为Student
/*
temp=(p+j)->grade;
(p+j)->grade = (p+j+1)->grade;
(p+j+1)->grade = temp;
错误代码 why? 注意 整体交换
*/
}
}
}
/*以表的形式输出*/
printf("姓名 年龄 分数 \n\n");//表头
for(i=0;i<=2;i++)
{
printf("%-4s %4d %4d\n",(p+i)->name,(p+i)->age,(p+i)->grade);
}
getchar();
return 0;
}
name:学生信息结构体 按总分排序 (降序)
*/
#include<stdio.h>
typedef struct{//结构体 定义时尽量放main()外面---方便
int grade;
int age;
char name[10];/*其他信息就不列举了*/
}Student;
int main()
{ int i,j;
Student temp;
Student student[3]={/*分成多条初始化--- 清晰*/
{600,18,"小明"},
{550,19,"小红"},
{700,20,"tom"},
} ;
/*用结构体指针---提高效率*/
/*冒泡排序*/
Student* p=student;
for(i=1;i<=2;i++)
{
for(j=0;j<=3-i-1;j++)//大-->小
{
if( (p+j)->grade < (p+j+1)->grade)
{
temp=*(p+j);
*(p+j) = *(p+j+1);
*(p+j+1)= temp;//注意 temp 的类型为Student
/*
temp=(p+j)->grade;
(p+j)->grade = (p+j+1)->grade;
(p+j+1)->grade = temp;
错误代码 why? 注意 整体交换
*/
}
}
}
/*以表的形式输出*/
printf("姓名 年龄 分数 \n\n");//表头
for(i=0;i<=2;i++)
{
printf("%-4s %4d %4d\n",(p+i)->name,(p+i)->age,(p+i)->grade);
}
getchar();
return 0;
}
相关文章推荐
- //有5名学生保存在结构体数组中,编程查找成绩最高者,输出该学生全部信息。 // //对上述5名学生数组,按成绩从高到低排序,并输出。
- 有5名学生保存在结构体数组中,编程按学生的成绩升序排序,按学生的姓名降序排序,按年龄从低到高排序
- 有5名学生保存在结构体数组中,编程按学生的成绩升序排序,按学生的姓名降序排序,按年龄从低到高排序
- 问题十六:每位同学的信息学号、姓名、C++、高数、英语成绩,定义一个学生成绩的结构体数组。
- 结构体数组存放学生信息并排序输出
- 有 4000 5名学生保存在结构体数组中,编程按学生的成绩升序排序,按学生的姓名降序排序,按年龄从低到高排序
- C/C++动态自定义结构体数组实例锻炼-学生成绩排序
- 【C语言】用结构体数组完成:有5个学生(包括学号,姓名,成绩),要求按照成绩高低输出学生信息.
- C语言结构体+数组实现学生学号成绩的统计、排序
- 有5名学生保存在结构体数组中,编程按学生的成绩升序排序,按学生的姓名降序排序,按年龄从低到高排序, 成绩, 年龄
- C语言,有5名学生保存在结构体数组中,编程按学生的成绩升序排序,按学生的姓名降序排序,按年龄从低到高排序
- 第17周项目6-1-3结构体数组运用于学生成绩信息
- (指向结构体数组的指针)有n个结构体变量,内含学生学号,姓名和3门课的成绩。要求输出平均成绩最高的学生的信息
- 结构体数组存放学生信息并排序输出
- 学生结构体数组,按成绩排序、按年 龄排序,按名字排序...如何实现?
- 有5名学生保存在结构体数组中,编程查找成绩最高者,输出该学生的全部信息.
- 动态构造存放学生信息的结构体数组,按分数排序输出
- 结构体指针数组完成输入学生姓名学号数学语文成绩修改排序显示等功能
- 结构体--学生信息排序
- 第十七周项目C 结构体--学生信息排序