按照递归实现一个字符串的逆序输出。 如输入一个字符串12345,输出为54321 c语言程序,谢啦

 我来答
lchn_kyd
2011-04-07 · TA获得超过299个赞
知道小有建树答主
回答量:559
采纳率:0%
帮助的人:294万
展开全部
#include<stdio.h>
#include<string.h>

void reverse(char *s,int length){
if(length==1){
printf("%c",s[0]);

}else{
reverse(&s[1],length-1);
reverse(&s[0],1);
}
}
void main(){
char input[]="1720470234";
puts(input);
int l=strlen(input);
reverse(input,l);
printf("\n");
}

就这个
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
328873248
2011-04-07 · TA获得超过180个赞
知道答主
回答量:22
采纳率:0%
帮助的人:23.1万
展开全部
#include<stdio.h>
void y(char *s)
{if(*s!='\0') y(s+1);
printf("%c ",*s);
}
void main()
{
char s[100]="12345";
y(s);
}
函数y就是按照递归实现一个字符串的逆序输出

参考资料: 自己写的,简明易懂

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
凌云紫冥
2011-04-07 · TA获得超过215个赞
知道小有建树答主
回答量:192
采纳率:0%
帮助的人:215万
展开全部
#include <stdio.h>
#include <string.h>
void reverse(char str[])
{
static int len = strlen(str) - 1;
if (len != -1)
{
printf("%c", str[len]);
--len;
reverse(str);
}
}
int main()
{
char str[] = "12345";
reverse(str);
return 0;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
威武且犀利的彩虹8073
2011-04-07 · 超过42用户采纳过TA的回答
知道答主
回答量:111
采纳率:0%
帮助的人:107万
展开全部
#include "stdio.h"
#include "string.h"
#include <iostream>
using namespace std;

void reverseNum(char* str){
if(0== str || 0 == strlen(str))
{
cout<<endl;
return;
}
int cnt = strlen(str);
char c = str[cnt-1];
str[cnt-1] = 0;
cout<<c;
reverseNum(str);
}
int main(int argc, char* argv[])
{
while(1){
char str[16];
scanf("%16s",str);
reverseNum(str);
}
return 0;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式