单选题 有以下程序:
#include < stdio. h >
main ( )
{ char s[] = "ABCD", * p;
for(p=s+1;p<s+4;p++) pfintf(" % s /n" ,p);
}
  • A. ABCD BCD CD D
  • B. A B C
  • C. B C D
  • D. BCD CD D
【正确答案】 D
【答案解析】[解析] p=s+1是指将s(1)的地址赋给p,循环的终止条件是p<s+4,s+4表示的是 s[4]的地址,总共3次循环,因为程序中是按“%s”格式符输出,所以应该输出3个字符串,而且每次输出字符串的字符个数减少1。由此可得选项D)正确。