关于#C语言#的问题,如何解决?

img

急需,急需,C语言结课,按照上面要求整就行了,急需,急需,C语言结课,按照上面要求整就行了,两个题分开

一个函数计算出所有要的结果呗。你这是两个题,还是一个题啊?
第一题:

#include <stdio.h>

void calc(double *a,int n,double *total,double *avg,double *max,double *min)
{
    for(int i=0;i<n;i++)
    {
        *total += a[i];
        if(i==0 || *max < a[i])
            *max = a[i];
        if(i==0 || *min > a[i])
            *min = a[i];
    }
    *avg = *total/n;
}

int main()
{
    double a[10];
    double total=0,avg=0,max=0,min=0;
    int i;
    printf("请输入10个学生的C语言成绩:\n");
    for(i=0;i<10;i++)
        scanf("%lf",&a[i]);
    calc(a,10,&total,&avg,&max,&min);
    printf("总分:%.1f,平均分:%.1f,最高分:%.1f,最低分:%.1f\n",total,avg,max,min);
    return 0;
}

img

第二题

#include <stdio.h>
typedef struct _student
{
    char name[20];
    int num;
    int age;
    double score;
}student;

int main()
{
    student stu[10];
    double total=0;
    int i,max,min;

    for(i=0;i<10;i++)
    {
        printf("请输入第%d个学生的姓名:",i+1);
        scanf("%s",stu[i].name);
        printf("请输入第%d个学生的学号:",i+1);
        scanf("%d",&stu[i].num);
        printf("请输入第%d个学生的年龄:",i+1);
        scanf("%d",&stu[i].age);
        printf("请输入第%d个学生的C语言成绩:",i+1);
        scanf("%lf",&stu[i].score);
        total += stu[i].score;
        if(i==0 || stu[i].score > stu[max].score)
            max = i;
        if(i==0 || stu[i].score < stu[min].score)
            min = i;
    }
    printf("平均分:%.2lf,最高分:%.2lf,最高分学号:%d,最低分:%.2lf,最低分学号:%d\n",total/10,stu[max].score,stu[max].num,stu[min].score,stu[min].num);
    return 0;
}