永发信息网

下列程序的执行结果是什么

答案:5  悬赏:30  手机版
解决时间 2021-04-24 05:07
  • 提问者网友:世勋超人
  • 2021-04-23 18:53

int x;
main()
{
char a[]="abcd";
char *p=a+3;
for(;p>=a;p--)printf("%s",p);
}

 

请给出解释,感激不尽

最佳答案
  • 五星知识达人网友:低血压的长颈鹿
  • 2021-04-23 19:55
这个题主要考虑的是指针, char *p=a+3,相当于
char *p;
p=a+3;
因此指针p指向指针a所指的字符位置向后移动3个字符,也就是说,指针p指向字符'd';
所以,第一次输出的是字符d,以此分别是cd,bcd,abcd,结果为:
dcdbcdabcd

全部回答
  • 1楼网友:神也偏爱
  • 2021-04-23 23:43
程序输出结果是:dcdbcdabcd
  • 2楼网友:空山清雨
  • 2021-04-23 23:03

个人认为,你想程序结果太直接化了。我想你也是学习计算机语言的,作为你的交流者我认为像这样的问题你想给出自己的见解,看看自己的想法(也就是按照程序的执行步骤)。然后再去着这里提问会对你学习语言有很大的提高,这样你也学习的比较踏实。

同时作为同行,祝你成功~

  • 3楼网友:躲不过心动
  • 2021-04-23 22:43
运行结果为:dcdbcdabcd
  • 4楼网友:詩光轨車
  • 2021-04-23 21:06
第一个d,第二个cd,第三个bcd,第四个abcd
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯