标题:利用一维数组名做函数参数 看不懂 求解答
只看楼主
feng198823
Rank: 1
等 级:新手上路
帖 子:14
专家分:0
注 册:2014-12-6
结帖率:66.67%
已结贴  问题点数:20 回复次数:4 
利用一维数组名做函数参数 看不懂 求解答
#include <stdio.h>

int main()
{
  float average(float array[10]);

  float score[10],aver;

  int i;

     printf("input10 scores:\n");

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

      scanf ("%f",&score[i]);

    printf("\n");

    aver=average(score);          //这样对吗?看晕了   函数声明为啥写成这样aver=average(score)语法不错误    score它是实参 这一步看不懂          求大神开导

                                


    printf ("average score is %5.2f\n",aver);

    return 0;

}
      


     float average(float array [10])

     { int i;
  
       float aver ,sum=array[0];


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

           sum=sum+array[i];

        aver=sum/10;

        return (aver);


}


谭浩强第4版  利用数组名 作函数参数     求10个学生的平均成绩
搜索更多相关主题的帖子: average include return scores 
2014-12-29 20:00
longwu9t
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:小飞侠
威 望:6
帖 子:732
专家分:2468
注 册:2014-10-9
得分:20 
float average(float array[10]);
这是函数声明
float score[10]
这是变量定义(在后面调用函数时当做实参传入)
aver=average(score); 
这是函数调用并将函数返回值赋于aver

Only the Code Tells the Truth             K.I.S.S
2014-12-29 20:04
feng198823
Rank: 1
等 级:新手上路
帖 子:14
专家分:0
注 册:2014-12-6
得分:0 
回复 2楼 longwu9t
我知道  把返回的值赋值给aver     average(score)这里我迷糊了     它们俩迷糊了average(array)
2014-12-29 20:24
longwu9t
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:小飞侠
威 望:6
帖 子:732
专家分:2468
注 册:2014-10-9
得分:0 
回复 3楼 feng198823
average(score)这是传实参给函数
float average(float array[10]);这里array[10]是虚参
你要是迷糊的话就这么办把函数定义改一下

float average(float score[10]);

这样的问题任何一本基础的C教材上都有讲的
静下心来仔细看一下书就明了

Only the Code Tells the Truth             K.I.S.S
2014-12-29 20:31
feng198823
Rank: 1
等 级:新手上路
帖 子:14
专家分:0
注 册:2014-12-6
得分:0 
回复 4楼 longwu9t
我懂啦    !谢谢    脑袋转过来弯了   呵呵
2014-12-29 20:39



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-440505-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.054419 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved