25. 下列程序运行后的输出结果是().main() { char a[10]={'1','2','3','4','5','6','7','8','9',0},*p; int i=8; p=a+i; printf("%s\n",p-3);}A.123456789 B.6789 C.'6' D.789求解释过程...

来源:学生作业帮助网 编辑:作业帮 时间:2024/04/30 11:05:36
25. 下列程序运行后的输出结果是().main()    { char a[10]={'1','2','3','4','5','6','7','8','9',0},*p;      int i=8;      p=a+i;      printf(

25. 下列程序运行后的输出结果是().main() { char a[10]={'1','2','3','4','5','6','7','8','9',0},*p; int i=8; p=a+i; printf("%s\n",p-3);}A.123456789 B.6789 C.'6' D.789求解释过程...
25. 下列程序运行后的输出结果是().
main()
{ char a[10]={'1','2','3','4','5','6','7','8','9',0},*p;
int i=8;
p=a+i;
printf("%s\n",p-3);
}
A.123456789 B.6789 C.'6' D.789
求解释过程...

25. 下列程序运行后的输出结果是().main() { char a[10]={'1','2','3','4','5','6','7','8','9',0},*p; int i=8; p=a+i; printf("%s\n",p-3);}A.123456789 B.6789 C.'6' D.789求解释过程...
选B
“1234567890”相当于一个字符转,a为该字符串的首地址,即指向‘1’内存单元的地址,
a+8,为内存单元‘9’所对应的地址,
即p=a+8-3
所以p指向的是a+5内存单元(即‘6’),所以从‘6’开始输出字符串,遇到‘\0’(即0)则停止.
所以为6789
不懂请追问,