C语言数组作函数参数

C语言Plus 2020-03-24数组

图片

若是您想要在函数中传递一个一维数组做为参数,您必须如下面三种方式来声明函数形式参数,这三种声明方式的结果是同样的,由于每种方式都会告诉编译器将要接收一个整型指针。一样地,您也能够传递一个多维数组做为形式参数。ide

图片

方式一函数

形式参数是一个指针(您能够在下一章中学习到有关指针的知识):学习

void myFunction(int *param)spa

{指针

    . . .图片

}ci


方式二get

形式参数是一个已定义大小的数组:编译器

void myFunction(int param[10])

{    

    . . .

}


方式三

形式参数是一个未定义大小的数组:

void myFunction(int param[])

{

    . . .

}


实例

如今,让咱们来看下面这个函数,它把数组做为参数,同时还传递了另外一个参数,根据所传的参数,会返回数组中各元素的平均值:

double getAverage(int arr[], int size)

{  int i;  

  double avg;  

 double sum;  for (i = 0; i < size; ++i)  {    sum += arr[i];  

  }  avg = sum / size;  return avg;

}

如今,让咱们调用上面的函数,以下所示:

#include <stdio.h> /* 函数声明 */

double getAverage(int arr[], int size); int main ()

{ /* 带有 5 个元素的整型数组 */  int balance[5] = {1000, 2, 3, 17, 50};         double avg;   /* 传递一个指向数组的指针做为参数 */  avg = getAverage( balance, 5 ) ;   /* 输出返回值 */  printf( "平均值是:%f ", avg );      return 0;

} double getAverage(int arr[], int size)

{  int i;  

  double avg;  

 double sum=0;  for (i = 0; i < size; ++i)  {    sum += arr[i];  

  }  avg = sum / size;  return avg;

}

当上面的代码被编译和执行时,它会产生下列结果

平均值是: 214.400000
相关文章
相关标签/搜索