C语言用数组名作函数参数

用数组元素作函数实参可以向形参传递一个数组元素的值,有时希望在函数中处理整个数组的元素,此时可以用数组名作为函数实参,但是并不是将该数组中全部元素传递给所对应的形参。由于数组名代表数组的首地址,因此只是将数组的首元素的地址传递给所对应的形参,因此对应的形参应当是数组名或指针变量。

例:有十个学生成绩,用一个函数求全体学生的平均成绩

分析:
在主函数中定义一个实型数组score,将输入的10个学生成绩存放在数组中。average函数用来求学生的平均成绩。这样就需要把数组有关的信息传递给average函数。用数组名作为实参,把数组地址传给average函数,在该函数中对数组进行处理。

源码如下:

#include<stdio.h>

float average(float array[10]);
{
    
    
	int i;
	float aver,sum=array[0];
	for(i=0;i<10;i++)
		sum=sum+array[i];      
	aver = sum/10;
	return (aver);
}

int main ()
{
    
    
	float score[10],aver;
	int i;
	printf("please enter two scores:\n");
	for(i=0;i<10;i++)
		scanf("%f",&score[i]);
	aver=average(score);  //以数组名为实参调用average函数
	printf("average score is %5.2f\n",aver);
	return 0;
}

おすすめ

転載: blog.csdn.net/qq_32100603/article/details/110010255