C语言指针类题目求解,求大神

写出下面程序的运行结果。intfunc(char*ps){if(*ps==‘\0’)return(0);func(ps+1);printf(“%s\n”,ps);}voi... 写出下面程序的运行结果。
int func(char *ps)
{
if(*ps == ‘\0’)
return(0);
func(ps + 1);
printf(“%s\n”, ps);
}
void main()
{
char str[10] = “HELLO”;
func(str);
}
展开
 我来答
kenshibin
2012-12-12 · TA获得超过175个赞
知道小有建树答主
回答量:591
采纳率:80%
帮助的人:153万
展开全部
这个其实是在考对函数的递归的理解,结果应该是
O
LO
LLO
ELLO
HELLO
追问
能简述一下运行过程吗?
追答
func(ps + 1);
printf(“%s\n”, ps);
就用这二句说吧 在输出之前函数调用了自己而参数是自己的地址+1意思也就是从下一个字符开始
这样不停的调用自己直到字符串结尾返回
这时最后次调用的函数的输出才被执行 那就是最后一个字符了
直到最初调用的状态 整个串被输出结束。这样说明白吗
来自:求助得到的回答
祁伟1990
2012-12-12 · TA获得超过188个赞
知道小有建树答主
回答量:492
采纳率:0%
帮助的人:146万
展开全部
O
LO
LLO
ELLO
HELLO
追问
能简述一下运行过程吗?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
碎言君9I
2012-12-12 · TA获得超过232个赞
知道小有建树答主
回答量:175
采纳率:0%
帮助的人:147万
展开全部
O
OL
OLL
OLLE
OLLEH
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式