想了一上午了,没想出来,怎么用c语言实现,求参考答案

img

img


想了一上午都没想出来怎么写,求参考答案。用c语言实现,真的头痛这个题目。

参考
https://blog.csdn.net/weixin_42504619/article/details/117160376


#include< stdio.h>

#include< stdlib.h>

#include< conio.h>

int INDEX[32];

struct student

{

int num;

char name[21];

int age;

int high,weight;

}students[32];

void page_title(char *menu_item){

printf(" \n ==================>>> 学 生 健 康 管 理 系 统<<<===================== \n\n %s \n\n",menu_item);

}//

void return_confirm(void)

{

printf("\n按任意键返回\n");

getch();

}//

void student_new(void)

{

int n;

page_title("录入学生基本信息");

for(n=0;n<32;n++)

if(students[n].num==0) break;

printf("学号:");

scanf("%d",&students[n].num);

printf("姓名:");

scanf("%s",&students[n].name);

printf("年龄:");

scanf("%d",&students[n].age);

return_confirm();

}//

int search_num(void)

{

int n,i;

printf("请输入学生学号:");

scanf("%d",&i);

for(n=0;n<32;n++)

{

if(students[n].num==i&&students[n].num!=0)

{

printf("学号:%d\n",students[n].num);

printf("姓名:%s\n",students[n].name);

printf("年龄:%d\n",students[n].age);

return n;

}

}

printf("\n输入错误或学号不存在.\n");

return -1;

}//

void student_del(void)

{

int n;

page_title("注销学生基本信息");

if((n=search_num())!=-1) students[n].num=0;

printf("\n!该学生已注销.\n");

return_confirm();

}

/

void student_edit(void){

int n;

page_title(" ======编辑学生基本信息======");

if((n=search_num())!=-1)

{

printf("\n请重新输入新信息:\n学号:");

scanf("%d",&students[n].num);

printf("姓名:");

scanf("%s",&students[n].name);

printf("年龄:");

scanf("%d",&students[n].age);

}

return_confirm();

}

void score_input(void){

int s,n,t;

page_title(" ======录入体检结果======");

printf("\n请用数字键选择项目\n>


#include <stdio.h>
#include <string.h>
#include <stdlib.h> 

int show_system()
{
    printf("***0: 信息录入 ***\n");
    printf("***1: 信息查询 ***\n");
    printf("***2: 退出系统 ***\n");
    
    int val;
    scanf("%d",&val);
    return val;
}


void inf_input(int * Hight_arr)
{
    for (int i = 0; i < 5; i++)
    {
        printf("请输入第[%d]位学生身高:\n",i);
        scanf("%d",&Hight_arr[i]);
    }
    
    return ;
    
}

void ref_func(int * Hight_arr)
{
    int num;
    printf("请输入需要查询的学生学号(数组下标):\n");
    scanf("%d",&num);

    if (num<5)
    {
        printf("学号为[%d]的学生身高为:%d\n",num,Hight_arr[num]);
    }
    else
    {
        printf("输入学号错误!\n");
    }

    return ;
    
}

void Fun_max(int * Hight_arr)
{
    int max = Hight_arr[0];
    for (int i = 0; i < 5; i++)
    {
        if (Hight_arr[i] > max )
        {
            max = Hight_arr[i];
        }
    }
    printf("最大值为:%d\n",max);
    return ;
}

void Fun_min(int * Hight_arr)
{
    int min = Hight_arr[0];
    for (int i = 0; i < 5; i++)
    {
        if (Hight_arr[i] < min )
        {
            min = Hight_arr[i];
        }
    }
    printf("最小值为:%d\n",min);
    return ;
}

int main()
{
    //定义一个身高信息数组
    int Hight_arr[5] = {0};

    while (1)
    {
        //显示主菜单
        int num = show_system();

        switch (num)
        {
        case 0:
            //信息录入
            inf_input(Hight_arr);
            break;
        case 1:
            //信息查询
            ref_func(Hight_arr);
            break;
        case 2:
            exit(0);
        default:
            printf("输入有误,请重新输入!");
            break;
        }
        
        //显示平均值
        int sum = 0;
        for (int i = 0; i < 5; i++)
        {
            sum = sum + Hight_arr[i];
        }
        printf("学生身高平均值为:%f cm\n",(float)(sum/5));
        
        //显示最大值
        Fun_max(Hight_arr);

        //显示最小值
        Fun_min(Hight_arr);
    }
}