函数day04

#include<stdio.h>
#include<string.h>
void menu(){
    
        printf("=======学生管理系统======\n");
        printf("=====1.学生信息录入=====\n");
        printf("=====2.查看学生信息=====\n");
        printf("=====3.学习最好的学生信息\n");
        printf("=====4.学生姓名升序打印==\n");
        printf("=====5.学生成绩升序打印==\n");
}
void num_1(char arr[][20],int a,int brr[])
{
                    for(int i = 0;i<a;i++)
                {
                    printf("请输入姓名:");
                    scanf("%s",arr[i]);
                    getchar();
                    putchar(10);
                    printf("请输入成绩:");
                    scanf("%d",&brr[i]);
                    getchar();
                    putchar(10);
                }
                    printf("输入完成\n");

}

void num_2(char arr[][20],int brr[],int a)
{
            for(int i=0;i<a;i++)
            {
                printf("姓名:%s\t",arr[i]);
                printf("成绩:%d",brr[i]);
                putchar(10);

            }
}
int num_3(int brr[],int a)
{
    int max =0;
    int maxi=0;
    for(int i=0;i<a;i++)
    {
        if(max<brr[i])
        {
            max =brr[i];
            maxi=i;
        }
    }
    return maxi;
}
void num_4(char arr[][20],int brr[],int a)
{
    for(int p=1;p<a;p++)
    {
        for(int i=0;i<a-p;i++)
        {
            char name[20]="";
            int abb = 0;
            if(strcmp(arr[i],arr[i+1])>0)
            {
                strcpy(name,arr[i]);
                strcpy(arr[i],arr[i+1]);
                strcpy(arr[i+1],name);
                 abb=brr[i];
                 brr[i]=brr[i+1];
                 brr[i+1]=abb;
            }
        }
    }
    for(int i=0;i<a;i++)
            {
                printf("第%d名",i+1);
                printf("姓名:%s\t",arr[i]);
                printf("成绩:%d",brr[i]);
                printf("\n");
            }
}
void num_5(char arr[][20],int brr[],int a)
{
        for(int p=1;p<a;p++)
    {
        for(int i=0;i<a-p;i++)
        {
            char name[20]="";
            int abb = 0;
            if(brr[i]>brr[i+1])
            {
                strcpy(name,arr[i+1]);
                strcpy(arr[i+1],arr[i]);
                strcpy(arr[i],name);
                 abb=brr[i+1];
                 brr[i+1]=brr[i];
                 brr[i]=abb;
            }
        }
    }
    for(int i=0;i<a;i++)
            {
                printf("第%d名",i+1);
                printf("姓名:%s\t",arr[i]);
                printf("成绩:%d",brr[i]);
                printf("\n");
            }

}
int main(int argc, const char *argv[])
{
    int put =0;
    char arr[10][20]={0};
    int brr[20]={0};

    while(1)
    {
        menu();
        scanf("%d",&put);
        getchar();
        int a= 0;
        printf("请输入学生数总数:");
        putchar(10);
        scanf("%d",&a);
        switch(put)
        {
            case 1:
                {
                    num_1(arr,a,brr);
                }
                break;
            case 2:
                {
                    num_2(arr,brr,a);
                }
                break;
            case 3:
                {
                 int add=num_3(brr,a);
                 printf("排名第一 学生%s\t成绩:%d",arr[add],brr[add]);
                 putchar(10);
                }
                break;
            case 4:
                {
                 num_4(arr,brr,a);
                }
                break;
            case 5:
                {
                num_5(arr,brr,a);
                }
                break;
            default;
                printf("输入错误");
        }
    }
    
    return 0;
}
 

  • 23
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值