为了账号安全,请及时绑定邮箱和手机立即绑定

C语言题目,求大神解答

C语言题目,求大神解答

C
满天星17 2016-12-28 10:49:07
利用递归函数调用方式,将所输入的5个字符,以相反顺序打印出来。(不要用指针...)
查看完整描述

1 回答

已采纳
?
望远

TA贡献1017条经验 获得超1032个赞

#include <stdio.h>
#include<string.h>
void fun(char str[],int n)
{
	if(n==1)
		printf("%c",str[strlen(str)-n]);
	else 
	{
		fun(str,n-1);
		printf("%c",str[strlen(str)-n]);
	}
}
void main()
{
    char str[10];
	gets(str);
	fun(str,strlen(str));
	printf("\n");
}


查看完整回答
反对 回复 2016-12-28
  • 满天星17
    满天星17
    在问一下,那个是怎么执行的。多谢大神了。
  • 望远
    望远
    输入12345,那么函数调用时n==5,所以执行else,else里面再次调用了函数fun,并且参数里面的n-1,...直到n==1,这时输出str[5-1],就是输出第五个元素5,然后程序返回到else继续往下执行输出str[5-2]-->4...一直回溯直到全部输出完毕!
  • 1 回答
  • 0 关注
  • 1255 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信