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/12/26 04:17:19
25.下列程序运行后的输出结果是().main(){chara[10]={''1'',''2'',''3'',''4'',''5'',''6'',''7'',''8'',''9'',0},*p;inti=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
不懂请追问,