• c语言 12


    1、

    1.1

    #include <stdio.h>
    #include <string.h>
    
    #define NUMBER 5
    #define NAME_LEN 64
    
    typedef struct{
        char name[NAME_LEN];
        int height;
        float weight;
        long schols;
    }Student;
    
    void swap(Student *x, Student *y)
    {
        Student tmp = *x;
        *x = *y;
        *y = tmp;    
    } 
    
    void sort(Student x[], int n)
    {
        int i, j;
        for(i = 0; i < n - 1; i++)
        {
            for(j = n - 1; j > i; j--)
            {
                if(x[j - 1].height > x[j].height)
                {
                    swap(&x[j - 1], &x[j]);
                }
            }
        }
    }
    
    int main(void)
    {
        int i;
        Student stu[NUMBER];
        
        for(i = 0; i < NUMBER; i++)
        {
            printf("NO.%d.name = ", i + 1); scanf("%s", stu[i].name);
            printf("NO.%d.height = ", i + 1); scanf("%d", &stu[i].height);
            printf("NO.%d.weight = ", i + 1); scanf("%f", &stu[i].weight);
            printf("NO.%d.schols = ", i + 1); scanf("%ld", &stu[i].schols);
        } 
        
        
        for(i = 0; i < NUMBER; i++)
        {
            printf("%-8s %7d %7.2f %7ld
    ", stu[i].name, stu[i].height, stu[i].weight, stu[i].schols);
        }
        
        sort(stu, NUMBER);
        puts("
    ================================
    ");
        for(i = 0; i < NUMBER; i++)
        {
            printf("%-8s %7d %7.2f %7ld
    ", stu[i].name, stu[i].height, stu[i].weight, stu[i].schols);
        }
        return 0;
    }

    1.2

    #include <stdio.h>
    #include <string.h>
    
    #define NUMBER 5
    #define NAME_LEN 64
    
    typedef struct{
        char name[NAME_LEN];
        int height;
        float weight;
        long schols;
    }Student;
    
    void swap(Student *x, Student *y)
    {
        Student tmp = *x;
        *x = *y;
        *y = tmp;    
    } 
    
    void sort_int(Student x[], int n)
    {
        int i, j;
        for(i = 0; i < n - 1; i++)
        {
            for(j = n - 1; j > i; j--)
            {
                if(x[j - 1].height > x[j].height)
                {
                    swap(&x[j - 1], &x[j]);
                }
            }
        }
    }
    
    void sort_str(Student x[], int n)
    {
        int i, j;
        for(i = 0; i < n - 1; i++)
        {
            for(j = n - 1; j > i; j--)
            {
                if(strcmp(x[j - 1].name,x[j].name) > 0)
                {
                    swap(&x[j - 1], &x[j]);
                }
            }
        }
    }
    
    int main(void)
    {
        int i;
        Student stu[NUMBER];
        
        for(i = 0; i < NUMBER; i++)
        {
            printf("NO.%d.name = ", i + 1); scanf("%s", stu[i].name);
            printf("NO.%d.height = ", i + 1); scanf("%d", &stu[i].height);
            printf("NO.%d.weight = ", i + 1); scanf("%f", &stu[i].weight);
            printf("NO.%d.schols = ", i + 1); scanf("%ld", &stu[i].schols);
        } 
        
        
        for(i = 0; i < NUMBER; i++)
        {
            printf("%-8s %7d %7.2f %7ld
    ", stu[i].name, stu[i].height, stu[i].weight, stu[i].schols);
        }
        
        int j;
        puts("choose: j = 1, sort by height;  j = 2, sort by name.");
        printf("j = "); scanf("%d", &j);
        
        switch(j)
        {
            case 1: sort_int(stu, NUMBER); break;
            case 2: sort_str(stu, NUMBER); break;
        }
        
        puts("
    ================================
    ");
        for(i = 0; i < NUMBER; i++)
        {
            printf("%-8s %7d %7.2f %7ld
    ", stu[i].name, stu[i].height, stu[i].weight, stu[i].schols);
        }
        return 0;
    }

  • 相关阅读:
    vue中使用ztree时报找不到init方法错的解决方案
    element-ui 自定义表单验证 , 但是不出现小红心解决方案
    iframe子页面与父页面之间通信
    GSS系列题解——最大子段和系列
    平衡树 区间树 学习
    数据结构:从入门到精通
    后缀数组
    2019元旦总结,迎接2019
    网络流+费用流 学习
    SLT学习——leafes tree扩展 【文艺平衡树】
  • 原文地址:https://www.cnblogs.com/liujiaxin2018/p/14852972.html
Copyright © 2020-2023  润新知