问题 单项选择题

有以下程序:mare(){int i,s=0,t[]={1,2,3,4,5,6,7,8,9}; for(i=0;i<9;i+=2) s+=* (t+ i); printf ("%d\n",s);}程序执行后的输出结果是( )。

A.45

B.20

C.25

D.36

答案

参考答案:C

解析: 要获得数组t的第i个元素的内容,既可以使用常规的t[i]表达式,也可以将数组名t看作一个指针常量,使用表达式*(t+ i)来获取数组t的第i个元素的内容。在本题中,for 循环会循环5次,循环变量i从。开始,每次加2。所以,循环结束后,s中的值为t[0]+t[2]+t[4]+t[6]+t[6]+t[8]=1+3+ 5+7+9=25。故应该选择C。

填空题
单项选择题 A1/A2型题