问题
单项选择题
下面程序的输出结果是______。 #include<stdio.h> main() { char *p[]="BOOL","OPK","H","SP"};int i;for(i=3;i>=0;i-,i-) printf("%c",*p[i]);printf("\n"); }
A.SO
B.SP
C.SPOPK
D.SHOB
答案
参考答案:A
解析:[评析] p[0]存放的是“BOOL\0”的首地址;p[1]存放的是“OPK\0”的首址等。在printf语句中输出的*p[i]表示p[i]字符串的第—个字符。在for循环中,i的初值为3,那么输出的第—个字符为“S”,接着两次i-,则输出的值为*p[1],即字符“O”,所以本题的输出为SO。