一.用数组元素作函数实参
1.有两个数组:
int a[8]={26,1007,956,705,574,371,416,517};
int b[8]={994,631,772,201,262,763,1000,781};
2.请在数组c中存储a、b中对应数的最大公约数:
c[8]={2,1,4,3,2,7,8,11}
#include <stdio.h>
int gcd(int m, int n)
{
int r;
while (r = m % n)
{
m = n;
n = r;
}
return n;
}
int main()
{
int i;
int a[8] = {
26,1007,956,705,574,371,416,517 };
int b[8] = {
994,631,772,201,262,763,1000,781 };
int c[8];
for (i = 0; i < 8; i++)
c[i] = gcd(a[i], b[i]);
for (i = 0; i < 8; i++)
printf("%d ", c[i]);
printf("\n");
return 0;
}
二.用数组名作函数参数
实例1: 修改以上程序,改用函数名作为实参传递;
#include <stdio.h>
void gcd(int a[], int b[], int c[],int N)
{
int m, n, i, r;
for (i = 0; i < N ; i++)
{
m = a[i];
n = b[i];
while (r = m % n)
{
m = n;
n = r;
}
c[i] = n;
}
for (i