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

来源:6-12 综合练习

SmallFartFart

2018-06-22 13:02

#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;
}

写回答 关注

2回答

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

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

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

    说错了,是自定义函数

C语言入门

C语言入门视频教程,带你进入编程世界的必修课-C语言

926024 学习 · 20793 问题

查看课程

相似问题