有以下程序 prt(int *m,int n) {int i; for(i=0;i<n;i++)m[i]++; } main() { int a[]={1,2,3,4,5},i; prt(a,5);

admin2009-04-15  19

问题 有以下程序    prt(int *m,int n)    {int i;      for(i=0;i<n;i++)m++;    }    main()    {    int a[]={1,2,3,4,5},i;    prt(a,5);    for(i=0;i<5;i++)     printf("%d,",a);    }    程序运行后的输出结果是

选项 A、1,2,3,4,5,
B、2,3,4,5,6,
C、3,4,5,6,7,
D、2,3,4,5,1,

答案2

解析 函数ptr(*m,n)中,参数m传递的是一个地址,所以可以改变主函数中数组a的各元素值,函数ptr(*m,n)的功能是将数组的各元素都自加1,所以,最后数组a中的各元素为2,3,4,5,6。
转载请注明原文地址:https://jikaoti.com/ti/kjK0FFFM
0

最新回复(0)