问题 单项选择题

下面程序的输出结果是_______。
#include<stdio.h>
main()
char*p[]="DOOL","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],即字符“0”,所以本题的输出为SO。

填空题
问答题 简答题