问题 单项选择题

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

A.1,2,3,4,5,

B.2,3,4,5,6,

C.3,4,5,6,7,

D.2,3,4,5,1

答案

参考答案:B

解析: 本题考查的是数组名作函数的参数。数组名实际上是一个指向该数组首地址的指针常量,所以数组名作函数的参数和用同类型的指针作参数没有区别.题目首先定义了一个函数,该函数通过一个for循环将指针m到m+n-1所指内存中的数据自增1,所以主函数中执行了 prt(a,5);语句后,数组a中的所有元素被自增1。所以,4个选项中选项B符合题意。

单项选择题 A2型题
填空题