1、
#include <stdio.h> void ary_set(int x[], int n, int val) { int i; for(i = 0; i < n; i++) { x[i] = val; } } int main(void) { int i; int a[5] = {1, 2, 3, 4, 5}; ary_set(a, 5, 99); for(i = 0; i < 5; i++) { printf("a[%d] = %d ", i, a[i]); } return 0; }
2、
#include <stdio.h> void ary_set(int x[], int n, int val) { int i; for(i = 0; i < n; i++) { x[i] = val; } } int main(void) { int i; int a[5] = {1, 2, 3, 4, 5}; ary_set(&a[2], 5, 99); // 实参为数组a的起始元素后的第2个元素,传给形参后,依次向后循环,所以第3、4、5元素为99. for(i = 0; i < 5; i++) { printf("a[%d] = %d ", i, a[i]); } return 0; }