这问题说明你对指针的运用还是不熟练的,既然是数组,作为函数参数传递的是数组首地址.
#includestdio.h
#includestdlib.h
voidfunc1(int*array,intsize){
inti,temp;
for(i=0;isize;i){
scanf(\"%d\",//利用scanf输入赋值
array=temp;
}
}
//数组array_b根据数组array_a的元素乘以项数获得元素值
voidfunc2(int*array_a,int*array_b,intsize){
inti;
for(i=0;isize;i)
array_b=array_a*i;
}
//输出数组元素
voidprint(int*array,intsize){
inti;
for(i=0;isize;i)
printf(\"%d\",array);
printf(\"\\n\");
}
intmain(void){
intsize;//数组大小
inti;
int*array_a,*array_b;//声明数组array_a,array_b
scanf(\"%d\",
array_a=malloc(sizeof(int)*size);
array_b=malloc(sizeof(int)*size);
func1(array_a,size);
func2(array_a,array_b,size);
print(array_a,size);
print(array_b,size);
return0;
} |