当前位置: 代码迷 >> C语言 >> 检查了好几遍,应该是没问题啊!但是........
  详细解决方案

检查了好几遍,应该是没问题啊!但是........

热度:397   发布时间:2007-12-10 11:51:01.0
检查了好几遍,应该是没问题啊!但是........
float average(float array[5])
{
int i;float aver,sum=array[0];
for (i=1;i<5;i++)
      sum=sum+array[i];
      aver=sum/5;
      return(aver);}
mian()
{
  float score[5],aver;
   int i;
   printf("input 5 scores:\n");
   for(i=0;i<5;i++)
      scanf("%f",&score[i]);
   printf("\n");
   aver=average(score);
   printf("verage score is :%5.2f\n",aver);
   }
搜索更多相关的解决方案: 检查  

----------------解决方案--------------------------------------------------------
for循环都少了一个{
----------------解决方案--------------------------------------------------------
#include<stdio.h>
float average(float array[5])
{
int i;
float aver,sum=array[0];
for (i=1;i<5;i++)
    {
        sum=sum+array[i];
        aver=sum/5;
        return(aver);
    }
}

main()
{
   float score[5],aver;
   int i;
   printf("input 5 scores:\n");
   for(i=0;i<5;i++)
   scanf("%f",&score[i]);
   printf("\n");
   aver=average(score);
   printf("verage score is :%5.2f\n",aver);
}


错了2 3处吧  看着改吧
----------------解决方案--------------------------------------------------------
是main() 而不是mian()
----------------解决方案--------------------------------------------------------
谢谢!
哎呀,我还以为自己蛮认真仔细呢!没想到自己是个马虎大王啊!哎!
谢谢!
----------------解决方案--------------------------------------------------------
回复 3# 的帖子
你帮人家修改得偏离原意了,LZ的程序并没有像2楼说的那样,少了一个"{" 因为那for循环内只有一条语句,可以不用大括号括起来的。 像你这样改的话
for (i=1;i<5;i++)
    {
        sum=sum+array[i];
        aver=sum/5;
        return(aver);
    }
和这样语句的效果是一样的   
  float average(float array[5])
{
int i;
float aver,sum=array[0];
sum=sum+array[1];
return sum/5;
}
只是求出前两个数的值 ,再把它除以5 就结束返回了。。。

所以  aver=sum/5;
        return(aver);   这两句放在for 循环内是严重的逻辑错误的。。。。
----------------解决方案--------------------------------------------------------
  相关解决方案