gmth.net
当前位置:首页 >> C语言:求一个数倒序输出,用递归怎么做 >>

C语言:求一个数倒序输出,用递归怎么做

从100输出到一吗 int Reverse(int i) { if(i == 1) retutn 0; else return Reverse(--i); }

#include void Reverse(int n) { if(n>0) { printf("%d",n%10); Reverse(n/10); } } int main() { int num; scanf("%d",&num); Reverse(num); printf("\n"); return 0; }

算法:递归函数传入正整数,先输出最末尾数字,再除以10用递归函数继续迭代,直到该正整数为0时终止递归。 例程: #includevoid rev(int n){ if(n > 0) { //判断该数是否大于0 printf("%d", n%10); //输出末位数值 rev(n/10); //递归迭代整除10...

#include using namespace std; void Function(int num) { //输出该数字的最后一位,如果是正序输出,把这句丢函数最后就可以了 cout

#includevoid f(){char ch;if((ch = getchar())!='\n')f();if(ch!='\n') printf("%c", ch); //这个输出语句是写在了递归调用之后,会被压栈,先压栈的后输出,所以可以实现逆序输出,如果把这个语句移动到f();就不会压栈了}void main(){f();pri...

很简单啊 void change(char str[]) { if(*str=='\0') return; change(str+1); printf("%c",*str); } 有问题hi我

#include #include void print_order_number(unsigned number) { printf("%d",number%10);fflush(NULL); if ( number >= 10 ) { print_order_number(number/10); } } int main(int argc, char**argv) { if ( argc != 2 ) { printf("Usage: rev_p...

#include int main() { int num; scanf("%d",&num); int a,i; for(i = 0;num > 0;i++) { a = num % 10; printf("%d",a); num = num/10; } return 0; } 分析:首先,输入的是一个整数,因此最前面一位数不是零,所以我们可以用除10取余法写。 a =...

#include //包含标准输入输出头文件 void conwert(int n) //定义替归函数,函数名可以自己定义 { int i; putchar(n%10+'0'); //输出个位数; if((i=n/10)!=0) //判断替归终点; convert(i); //替归输出其他位,每替归一次分别输出 十位,百位,千位,万...

#include void f(char *p,int n){ if(n==0) return; printf("%c",*(p+n-1)); f(p,n-1);}int main(int argc,char *argv[]){ char s[]="1234567890"; f(s,10); printf("\n"); return 0;}

网站首页 | 网站地图
All rights reserved Powered by www.gmth.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com