C语言第3课——传递数组给函数

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_35682844/article/details/84283545

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

方式 1

形式参数是一个指针:

#include <stdio.h>
double Sum(int *num, int Length);

int main()
{
	int a[6] = { 1,2,3,4,5,6 };
	printf("sum=%f\n", Sum(a, 6));
	getchar();
	return 0;
}

double Sum(int *num,int Length)
{
	double sum=0;
	for (size_t i = 0; i < Length; i++)
	{
		sum += num[i];
	}
	return sum;
}

 

方式 2

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

#include <stdio.h>
double Sum(int num[6]);

int main()
{
	int a[6] = { 1,2,3,4,5,6 };
	printf("sum=%f\n", Sum(a));
	getchar();
	return 0;
}

double Sum(int num[6])
{
	double sum=0;
	for (size_t i = 0; i < 6; i++)
	{
		sum += num[i];
	}
	return sum;
}

方式 3

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

#include <stdio.h>
double Sum(int num[], int Length);
int main()
{
	int a[6] = { 1,2,3,4,5,6 };
	printf("sum=%f\n", Sum(a,6));
	getchar();
	return 0;
}

double Sum(int num[],int Length)
{
	double sum=0;
	for (size_t i = 0; i < Length; i++)
	{
		sum += num[i];
	}
	return sum;
}

猜你喜欢

转载自blog.csdn.net/qq_35682844/article/details/84283545