问题
填空题
下列程序的输出结果 【10】 。
#define PR(ar)printf("ar=%d",ar)
main()
int j,a[]=1,3,5,7,9,1l,13,1,*p=a+5;
for(j=3;j;j--)
switch(j)
case 1:
case 2:PR(*p++);break;
case 3:PR(*(--p));
答案
参考答案:ar=9 ar=9 ar=11
解析: 本题综合考查了for循环,switch语句及宏替换等几个知识点。j=3时,执行PR(*(--p));输出数组元素a[4]的值;j=2时,执行PR(*p++);取出 p所指位置的元素a[4],然后p++;当j=1时,执行 PR(*p++);取得是数组元素a[6]的值11。