bjsgwhuejbd 2022-05-15 18:18 采纳率: 69.6%
浏览 30
已结题

代码不能运行,错误在哪里

在歌星大奖赛中,有10个评委为参赛的选手打分,分数为1到100分的整数。选手最后得分为:去掉一个最高分和一个最低分后其余8个分数的平均值。请编写代码实现该计分程序。
**输入格式要求:"%d" 提示信息:"Input score %d\n"
**输出格式要求:"Canceled max score: %d\nCanceled min score: %d\n" "Average score: %d\n"
程序运行示例如下:
Input score 1
98
Input score 2
87
Input score 3
89
Input score 4
84
Input score 5
83
Input score 6
87
Input score 7
89
Input score 8
92
Input score 9
93
Input score 10
95
Canceled max score: 98
Canceled min score: 83
Average score: 89

#include <stdio.h>
int number(int score[]);
int Max(int score[]);
int Min(int score[]);
int Average(int score[]);
int main()
{
    int score[10];
    number(score[10]);
    printf("Canceled max score: %d\nCanceled min score: %d\n",Max(score[10]),Min(score[10]));
    printf("Average score: %d\n",Average(score[10]));
    return 0;
}
int Max(int score[])//找出最大数
{
    int i,j,k;
    for(i=0;i<9;i++)
    {
       for(j=i+1;j<10;j++)
       {
           if(score[i]>score[j])
           {
               score[j]=score[i];
           }

       }
    }
    return score[9];
}
int Min(int score[])//找出最小数
{
    int i,j;
    for(i=0;i<9;i++)
    {
       for(j=i+1;j<10;j++)
       {
           if(score[i]<score[j])
           {
               score[j]=score[i];
           }

       }
    }
    return score[9];
}
int Average(int score[])//去除最大最小数后,求平均值
{
    int sum=0;
    int i,k;
    for(i=0;i<=9;i++)
    {
        sum=sum+score[i];
    }
    k=(sum-Max(score[10])-Min(score[10]))/8;
    return k;
}
int number(int score[])//记录十个数
{
    int i;
    for(i=1;i<=10;i++)
    {
        printf("Input score %d\n",i);
        scanf("%d",&score[i-1]);
    }
}


  • 写回答

2条回答 默认 最新

  • qzjhjxj 2022-05-15 21:39
    关注

    题主代码修改处见注释,供参考:

    #include <stdio.h>
    int number(int score[]);
    int Max(int score[]);
    int Min(int score[]);
    int Average(int score[]);
    int main()
    {
        int score[10];
        number(score); //number(score[10]);
        printf("Canceled max score: %d\nCanceled min score: %d\n",Max(score),Min(score));
        //printf("Canceled max score: %d\nCanceled min score: %d\n",Max(score[10]),Min(score[10]));
        printf("Average score: %d\n",Average(score));
        //printf("Average score: %d\n",Average(score[10]));
    
        return 0;
    }
    int Max(int score[])//找出最大数
    {
        int i,j,k = score[0];
        for(i=0;i<10;i++) //for(i=0;i<9;i++)
        {
                          //for(j=i+1;j<10;j++)
                          //{
               if(score[i]>k) //if(score[i]>score[j])
               {
                   k = score[i];//score[j]=score[i];
               }
    
                          //}
        }
        return k;         //score[9];
    }
    int Min(int score[])//找出最小数
    {
        int i,j = score[0];
        for(i=0;i<10;i++)       //for(i=0;i<9;i++)
        {
                                 //for(j=i+1;j<10;j++)
                                 //{
               if(score[i] < j)  //if(score[i]<score[j])
               {
                   j = score[i]; //score[j]=score[i];
               }
    
                                 //}
        }
        return j;                 //score[9];
    }
    int Average(int score[])//去除最大最小数后,求平均值
    {
        int sum=0;
        int i,k;
        for(i=0;i<=9;i++)
        {
            sum=sum+score[i];
        }
        k=(sum-Max(score)-Min(score))/8;
        //k=(sum-Max(score[10])-Min(score[10]))/8;
        return k;
    }
    int number(int score[])//记录十个数
    {
        int i;
        for(i=1;i<=10;i++)
        {
            printf("Input score %d\n",i);
            scanf("%d",&score[i-1]);
        }
    }
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 5月24日
  • 已采纳回答 5月16日
  • 创建了问题 5月15日

悬赏问题

  • ¥20 神经网络Sequential name=sequential, built=False
  • ¥16 Qphython 用xlrd读取excel报错
  • ¥15 单片机学习顺序问题!!
  • ¥15 ikuai客户端多拨vpn,重启总是有个别重拨不上
  • ¥20 关于#anlogic#sdram#的问题,如何解决?(关键词-performance)
  • ¥15 相敏解调 matlab
  • ¥15 求lingo代码和思路
  • ¥15 公交车和无人机协同运输
  • ¥15 stm32代码移植没反应
  • ¥15 matlab基于pde算法图像修复,为什么只能对示例图像有效