编写一个数组求和函数void Add(int n, int* a1, int* a2, int* result); 其中n<100是数组长度,a1是第一个数组,a2是第二个数组,result是a1和a2的和。假设a1={2, 4, 5, 8}, a2={1, 0, 4, 6},则result={3, 4, 9, 14};
编写main函数测试该函数的正确性。依次输入n, a1, a2, 输出result。
输入:
4
2 4 5 8
1 0 4 6
输出:
3 4 9 14
注:本题运到了指针,其中*(result+i)就相当于result [i]。还有要注意Add函数要写在主函数上面。
#include<iostream>
#include<cstdio>
using namespace std;
void Add(int n, int *a1, int *a2, int *result){
for(int i=0;i<n;i++){
*(result+i) = *(a1+i) + *(a2+i);//将数组对应位置的相加
printf("%d ", *(result+i));
}
}
int main(){
int n, a1[100], a2[100], result[100];
scanf("%d", &n);
for(int i=0;i<n;i++){
scanf("%d", &a1[i]);
}
for(int j=0;j<n;j++){
scanf("%d", &a2[j]);
}
Add(n, a1, a2, result);//调用函数
return 0;
}