问答详情
源自:6-12 综合练习

最高分和最低分这样写合理吗

#include <stdio.h>
extern void GrossScore(int a[])
{
    int sum1;
    for(int i=0;i<10;i++)
    {
        sum1+=a[i];
    }
    printf("10个班级学生考试总分为%d\n",sum1);
}
extern void TopScore(int a[])
{
    int j,k=0,temp=0,sum1=0;
    for(j=0;j<10;j++)
    {
       temp=0;
        for(k=0;k<10;k++)
        {
            if(a[j]>a[k]||a[j]==a[k])
            {
                ++temp;
            }if(temp==9)
             {
                sum1=a[j];
                j=9;
             }
        }
    }

    printf("10个班级学生考试最高分为%d\n",sum1);
}
extern void LowestScore(int a[])
{
    int j,k=0,temp=0,sum1=0;
    for(j=0;j<10;j++)
    {
       temp=0;
        for(k=0;k<10;k++)
        {
            if(a[j]<a[k]||a[j]==a[k])
            {
                ++temp;
            }if(temp==9)
             {
                sum1=a[j];
                j=9;
             }
        }
    }

    printf("10个班级学生考试最低分为%d\n",sum1);
}
extern void AverageScore(int a[])
{
    float sum1=0;
    for(int i=0;i<10;i++)
    {
        sum1+=a[i];
    }
    sum1=sum1/10;
    printf("10个班级学生考试平均分为%.1f\n",sum1);
}
extern void DescendingSort(int a[])
{
    int sum1,temp;
    for(int i=8;i>=0;i--)
    {
        for(int j=0;j<=i;j++)
         {
             if(a[j]<a[j+1])
             {
                temp=a[j];
                a[j]=a[j+1];
                a[j+1]=temp;
             }
         }
    }
    printf("10个班级学生考试成绩降序排布:\n");
    for(int k=0;k<10;k++)
    {
       printf("%d ",a[k]);
    }
}
int main()
{
    int score[]={67,98,75,63,82,79,81,91,66,84};
    GrossScore(score);
    TopScore(score);
    LowestScore(score);
    AverageScore(score);
    DescendingSort(score);
    return 0;
}

提问者:SmallFartFart 2018-06-22 13:02

个回答

  • 江小白DM
    2018-06-22 21:39:44
    已采纳

    可以,但是你第一个调用函数中,sum1应该赋值为0

  • 江小白DM
    2018-06-22 21:40:13

    说错了,是自定义函数