为了账号安全,请及时绑定邮箱和手机立即绑定

代码总是调不过,帮看看问题在哪?

代码总是调不过,帮看看问题在哪?

C
tdljh 2018-03-29 13:52:34
#include <stdio.h>#define N 10void tatalScore(int score[]){    int i;     int sum=0;    for (i=0;i<N;i++)    {        sum+=score(i);     }    return sum;}void highScore(int score[]){    int i=0;    int max;    max=score[i];    for (i=1;i<N;i++)    {        if (max<score[i])        {            max=score[i];        }    }    return max;}void lowScore(int score[]){    int i=0;    int min;    min=score[i];    for (i=1;i<N;i++)    {        if (min>score[i])        {            min=score[i];        }    }    return min;}void averageScore(int score[]){    int i,sum,ave;    sum=0;    for (i=0;i<N;i++)    {        sum+=score(i);    }    ave=sum/N;    return ave;}void getScore(int score[]){    int i,j,max;    max=score(0)    for (i=0;i<N;i++)    {        for (j=0;j<N-i-1;j++)        {            if (score(j)<score(j+1))            {                max=score(j);                score(j)=score(j+1);                score(j+1)=max;            }        }     for(i=0;i<N;i++) { printf("%d ",score[i]);                } printf("\n");            }   }int main(){        int score[N]={67,98,75,63,82,79,81,91,66,84};    int sum,max,min,ave;    sum=tatalScore(score);    max=highScore(score);    min=lowScore(score);    ave=averageScore(score);    printf("学生考试的总分为%d\n。",sum);    printf("学生考试的最高分为%d\n。",max);    printf("学生考试的最低分为%d\n。",min);    printf("学生考试的平均分为%d\n。",ave);    printf("学生考试的降序排序为:\n");    getScore(score);    return 0;}
查看完整描述

3 回答

?
宽容囖

TA贡献2条经验 获得超1个赞

#include <stdio.h>

#define N 10

int tatalScore(int score[])

{

    int i; 

    int sum=0;

    for (i=0;i<N;i++)

    {

        sum+=score[i]; 

    }

    return sum;

}


int highScore(int score[])

{

    int i=0;

    int max;

    max=score[i];

    for (i=1;i<N;i++)

    {

        if (max<score[i])

        {

            max=score[i];

        }

    }

    return max;

}


int lowScore(int score[])

{

    int i=0;

    int min;

    min=score[i];

    for (i=1;i<N;i++)

    {

        if (min>score[i])

        {

            min=score[i];

        }

    }

    return min;

}


int averageScore(int score[])

{

    int i,sum,ave;

    sum=0;

    for (i=0;i<N;i++)

    {

        sum+=score[i];

    }

    ave=sum/N;

    return ave;

}


int getScore(int score[])

{

    int i,j,max;

    max=score[0];

    for (i=0;i<N;i++)

    {

        for (j=0;j<N-i-1;j++)

        {

            if (score[j]<score[j+1])

            {

                max=score[j];

                score[j]=score[j+1];

                score[j+1]=max;

            }

        }

    

for(i=0;i<N;i++)

{

printf("%d ",score[i]);               

}

printf("\n");    

    

    }

   

}


int main()

{

    

    int score[N]={67,98,75,63,82,79,81,91,66,84};

    int sum,max,min,ave;

    sum=tatalScore(score);

    max=highScore(score);

    min=lowScore(score);

    ave=averageScore(score);

    printf("学生考试的总分为%d\n。",sum);

    printf("学生考试的最高分为%d\n。",max);

    printf("学生考试的最低分为%d\n。",min);

    printf("学生考试的平均分为%d\n。",ave);

    printf("学生考试的降序排序为:\n");

    getScore(score);

    return 0;

}

数组为[],而不是(),还有每句代码结束要加;号

查看完整回答
1 反对 回复 2018-03-29
?
别逼我打开屏幕

TA贡献13条经验 获得超2个赞

懒得看,我把我的给你好了

/*排名*******************************************************************了*/

#include <stdio.h>

int main()

{

    int score[]={88,90,0,89,39,11,90,84,66,84};

    int all=0;

    int max=-1011;

    int low=1011;

    double level;

int i,j,a,b;

int temp;

    for(i=0;i<10;i++)

    {

      if(score[i]>max)

      {

      max=score[i];

      }

      all=score[i]+all;

      if(score[i]<low)

      {

        low=score[i];  

      }

    }

    level=all/10+all%10/10;

    for(j=0;j<9;j++)

    {

      for(a=0;a<9;a++)  

    {

      if(score[a]<score[a+1])

      {

   temp=score[a];

    score[a]=score[a+1];

score[a+1]=temp;

      }

    }

        

    } 

     printf ("总分:%d\n",all);

     printf ("最高分:%d\n",max);

     printf ("最低分:%d\n",low);

     printf ("平均分:%f\n",level);


printf("分数降序排列:"); 

for(b=0;b<10;b++)

{

    if(b<9)

    {

    printf("%d,",score[b]);

    }

    else

    {

        printf("%d\n",score[b]);

    }

}

    return 0;


查看完整回答
反对 回复 2018-03-29
?
宽容囖

TA贡献2条经验 获得超1个赞

运行成功

学生考试的总分为786
。学生考试的最高分为98
。学生考试的最低分为63
。学生考试的平均分为78
。学生考试的降序排序为:
98 75 67 82 79 81 91 66 84 63

修改好了,结果有问题,说明你的逻辑还不对,自己想想吧

查看完整回答
反对 回复 2018-03-29
  • 3 回答
  • 0 关注
  • 1167 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信