以下两道题小白求大神解释27. 以下程序的运行结果是().main(){ int a[]={1,2,3,4,5,6}, *p=a; *(p+3)+=2;printf("%d",*(p+3));} A.2 B. 3 C.5 D.6 28. 以下程序的运行结果是().main(
来源:学生作业帮助网 编辑:作业帮 时间:2024/06/24 22:43:51
![以下两道题小白求大神解释27. 以下程序的运行结果是().main(){ int a[]={1,2,3,4,5,6}, *p=a; *(p+3)+=2;printf(](/uploads/image/z/4619818-10-8.jpg?t=%E4%BB%A5%E4%B8%8B%E4%B8%A4%E9%81%93%E9%A2%98%E5%B0%8F%E7%99%BD%E6%B1%82%E5%A4%A7%E7%A5%9E%E8%A7%A3%E9%87%8A27.+%E4%BB%A5%E4%B8%8B%E7%A8%8B%E5%BA%8F%E7%9A%84%E8%BF%90%E8%A1%8C%E7%BB%93%E6%9E%9C%E6%98%AF%EF%BC%88%EF%BC%89.main%28%29%7B++++int+a%5B%5D%3D%7B1%2C2%2C3%2C4%2C5%2C6%7D%2C++%2Ap%3Da%3B+++++%2A%28p%2B3%29%2B%3D2%3Bprintf%28%22%25d%22%2C%2A%28p%2B3%29%29%3B%7D+A%EF%BC%8E2+++++++++++B.+3+++++++++++C.5++++++++++++D.6+28.+%E4%BB%A5%E4%B8%8B%E7%A8%8B%E5%BA%8F%E7%9A%84%E8%BF%90%E8%A1%8C%E7%BB%93%E6%9E%9C%E6%98%AF%EF%BC%88%EF%BC%89.main%28)
以下两道题小白求大神解释27. 以下程序的运行结果是().main(){ int a[]={1,2,3,4,5,6}, *p=a; *(p+3)+=2;printf("%d",*(p+3));} A.2 B. 3 C.5 D.6 28. 以下程序的运行结果是().main(
以下两道题小白求大神解释
27. 以下程序的运行结果是().
main()
{ int a[]={1,2,3,4,5,6}, *p=a;
*(p+3)+=2;
printf("%d",*(p+3));
}
A.2 B. 3 C.5 D.6
28. 以下程序的运行结果是().
main()
{ char s[]="abcdefg",*p=s+2;
p[3]='\0';
printf("%s\n",p);
}
A.abc B. cde C. bce D.def
求解答过程
以下两道题小白求大神解释27. 以下程序的运行结果是().main(){ int a[]={1,2,3,4,5,6}, *p=a; *(p+3)+=2;printf("%d",*(p+3));} A.2 B. 3 C.5 D.6 28. 以下程序的运行结果是().main(
27.输出6
因为p指向a的起始地址,*(p+3)即是a[3](存放着4),
*(p+3)+=2;即是a[3]=a[3]+2;
最后即是输出a[3].
28.输出cde
因为*p=s+2;定义一个字符指针,并初始化为指向s[2](存放着'c'),p[3]='\0'即把s[5](即原存放‘f'的单元)置为‘\0’即字符串尾了.所以最后的输出就从c开始向后直到'\0'前一个字符结束.