下面程序的功能是通过动态分配内存函数malloc产生动态数组,程序的某次运行结果如下: Enter array size:8↙ array[0]=0 array[1]=10 array[2]=20 array[3]=30 array[4]=40 array[5]=50 array[6]=60 array[7]=70 为使程序完整并符合题目要求,应在空白处填写的内容是()。 #include <stdio.h> #include <stdlib.h> int main() { int *p,n,i; printf("Enter array size:"); scanf("%d",&n); (1) ; for(i=0;i<n;i++) (2) ; for(i=0;i<n;i++) (3) ; free(p); return 0; }
A.(1)p=(int)malloc(n*sizeof(int *)); (2)*(p+i)=i*10 (3)printf("array[i]=%dn",i,*(p+i))
B.(1)p=(int *)(n*malloc(sizeof(int *))) (2)*p+i=i*10 (3)printf("array[%d]=%dn",i,*(p+i))
C.(1)p=(int *)malloc(n*sizeof(int)); (2)*(p+i)=i*10 (3)printf("array[%d]=%dn",i,*(p+i))
D.(1)p=(int *)malloc(n*sizeof(int)); (2)*p+i=i*10 (3)printf("array[i]=%dn",i,*p+i)