利用递归函数调用方式,将所输入的字符,以相反顺序打印出来 c语言

#include<stdio.h>
void reverse (char a[]);
void main()
{
char a[50];
gets(a);
reverse(a);
}
void reverse (char a[])
{int i=0;
if(a[i]!='\0')
{
reverse(&a[i+1]);
printf("%c",&a[i]);
}
else return;
}

第1个回答  2012-12-04
如下修改就好了
#include<stdio.h>
void reverse(char a[]);
void main()
{
char a[50];
gets(a);
reverse(a);
}
void reverse(char a[])
{
int i=0;
if(a[i]!='\0'){
reverse(&a[i+1]);
printf("%c",a[i]);//*********printf("%c",&a[i]);打印的是地址不是数据
}
else return;
}本回答被提问者和网友采纳

...利用递归函数调用方式,将所输入的5个字符,以相反顺序打印出来。
1. putchar()……3 按照1234554321的次序,标号相同的语句是同一个函数的语句,正所谓first in last out 首先被执行getchar的最后被执行putchar

C语言问题
题目:输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。 1.程序分析:利用while语句,条件为输入的字符不为'\\n'. 2.程序源代码: #include "stdio.h" main() {char c; int letters=0,space=0,digit=0,others=0; printf("please input some characters\\n"); while((c=getchar())!='...

求C语言习题!
题目:利用递归函数调用方式,将所输入的5个字符,以相反顺序打印出来。1.程序分析:2.程序源代码:#include "stdio.h"main(){int i=5;void palin(int n);printf("\\40:");palin(i);printf("\\n");}void palin(n)int n;{char next;if(n<=1) { next=getchar(); printf("\\n\\0:"); putchar(next...

求C语言题目
1.程序分析:字符共有256个.不同字符,图形不一样. 2.程序源代码:#include "stdio.h"main(){char a176,b219;printf("%c%c%c%c%c\\n",b,a,a,a,b);printf("%c%c%c%c%c\\n",a,b,a,b,a);printf("%c%c%c%c%c\\n",a,a,b,a,a);printf("%c%c%c%c%c\\n",a,b,a,b,a);print...

c语言:采用递归方法实现将输入的字符串按反序输出
以下是使用递归方法实现将输入字符串按反序输出的 C 语言程序:```c include <stdio.h> \/\/ 递归函数,将字符串 str 按反序输出 void printReverse(char *str) { if (*str == '\\0') { \/\/ 判断是否到达字符串结尾 return;} else { printReverse(str + 1); \/\/ 递归调用,输出下一...

C语言编写: 利用递归函数调用方式,将所输入的5个字符,以相反顺序打印出 ...
include<conio.h> include<stdio.h> void reverse(int i){ char c;if(i>0){c=getch();reverse(i-1);printf(" %c ",c);} } main(){ reverse(5);}

C语言程序设计:编写程序将输入的一个正整数以相反的顺序输出。例如输入...
include<stdio.h> void main(){ int a,b,c,d,e,f,g,h,sum;scanf("%d",&a);if(a>=1000&&a<=9999){ b=a\/1000;c=a%10;d=a\/1000;e=a\/100;f=e%10;g=a\/10;h=g%10;sum=c*1000+f*10+h*100+d;printf("转换后:%d",sum);} else printf("此数不为4位数");} ...

编程:试用递归函数,返回与所给十进制整数相反顺序的整数,如已知整数是...
怎么感觉这个东西用递归这么别扭呢?没必要吧?不过还是给你写个。int reverseInt(int n,int r=0){if(!n) return r;return reverseInt(n\/10,r*10+(n%10));}调用的时候只传第一个参数就可以了。

输入的5个字符,以相反顺序打印出来
5. palin(1): if 1<=1 成立, 读字符到next中,打出回车,及执行 putchar(next) 打出读到的字符. 返回.6. 第4步此时等到了palin(1)的返回,继续执行下边的 putchar(next); 打出第4步读到的next;返回.7. 第3步此时等到了palin(2)的返回,继续执行下边的 putchar(next); 打出第3步读到...

Python 中的反转字符串:reversed()、切片等
Python 提供了两种直接的方法来反转字符串。由于字符串是序列,因此它们是indexable、sliceable和iterable。这些功能允许您使用切片以相反的顺序直接生成给定字符串的副本。第二个选项是使用内置函数reversed()创建一个迭代器,该迭代器以相反的顺序生成输入字符串的字符。通过切片反转字符串 切片是一种有用的技术,它允许您...

相似回答