C语言。为什么答案是a?&a[i+1]在这是什么意思?

如题所述

&a[i+1] :空格后第一个字符元素的地址
程序执行时每次遇到空格,便用空格后面的字符串将之前的内容覆盖,直至遇到/0结束
所以答案就是you!
温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-10-01
这个程序的功能是从i=0开始循环,顺序读取字符,当字符为空格时,就把空格后面的所有字符(直到'\0')复制到开始的地址,然后令i=0,再次从开始顺序读取字符,以此类推。
第一次循环到How后面的空格,把后面的are you!复制到开始的地址,i=0,再从开始执行循环。此时a变成are you!
第二次循环到are后面的空格,把后面的you!复制到开始的地址,i=0,再从开始执行循环。此时a变成you!
后面没有空格了,输出字符串。就是you!
&a[i+1]是每次循环后空格后面第一个字符的地址,每次都从这个地址开始,把以后的所有字符复制到开始的地址。本回答被网友采纳