oj问题一-结构体---学生信息排序

来源:互联网 发布:linux 多国 语言 查看 编辑:程序博客网 时间:2024/05/18 19:21

代码:

/**Copyright (c) 2016, 烟台大学计算机与控制工程学院*All rights reserved.*文件名称:问题 A: 结构体--学生信息排序;*作    者:岳成艳;*完成日期:2015年4月3号;*版 本 号:vc++6.0;**问题描述:定义存放一个学生信息的结构体类型,学生信息包括:姓名,学号,性别,院系,要求在随意输入5个学生的相关信息后,按照学号从小到大顺序输出这些学生的信息。*输入描述:先输入5名学生的信息,按学号顺序排序输出后在输入要统计的院系名称;*程序输出:先按学号从小到大的顺序输出学生信息;*/#include <stdio.h>void paixu(int a[]);struct zhigong{    char name[5][80],zan[5][80],n[5];    long int xue[5];} z;int main(){    int i,a[5];    for(i=0; i<5; i++)    {        scanf("%s%ld %c %s",z.name[i],&z.xue[i],&z.n[i],z.zan[i]);        a[i]=i;  }    paixu(a);    for(i=0; i<5; i++)        printf("%s    %ld    %c    %s\n",z.name[a[i]],z.xue[i],z.n[a[i]],z.zan[a[i]]);    return 0;}void paixu(int a[]){    int i,j,t;    for(j=0; j<4; j++)        for(i=0; i<4-j; i++)        {            if(z.xue[i]>z.xue[i+1])            {                t=z.xue[i];                z.xue[i]=z.xue[i+1];                z.xue[i+1]=t;                t=a[i];                a[i]=a[i+1];                a[i+1]=t;            }        }}
运行测试:

总结:结构体的应用,同时使用了排序。

0 0
原创粉丝点击