#include <stdio.h>
void output(int n)
{
printf("%d", n%10);
n/10 ? output(n/10) : 0;
}
int main(int argc, char* argv[])
{
int n;
scanf("%d", &n);
output(n);
return 0;
}
//对这个递归算法不是很理解
//大牛带带我 |^_^|
#include <stdio.h>
void output(int n)
{
printf("%d", n%10);
n/10 ? output(n/10) : 0;
}
int main(int argc, char* argv[])
{
int n;
scanf("%d", &n);
output(n);
return 0;
}
//对这个递归算法不是很理解
//大牛带带我 |^_^|
#include<iostream>
using namespace;
int main()
{int a,b,c;
cin>>a>>b>>c;
cout<<c<<b<<a;
return 0;
}
c# 的 string有反转的方法Reverse
代码如下:
static void Main(string[] args)
{
Console.Write("输入内容:");
string str = Console.ReadLine();
Console.WriteLine();
Console.Write("反转结果:");
var v = str.Reverse();
foreach (var item in v)
{
Console.Write(item);
}
Console.ReadKey();
}
3 回答2k 阅读✓ 已解决
2 回答3.9k 阅读✓ 已解决
2 回答3.2k 阅读✓ 已解决
1 回答3.2k 阅读✓ 已解决
1 回答2.7k 阅读✓ 已解决
3 回答3.4k 阅读
1 回答1.6k 阅读✓ 已解决
这个递归程序在开始时先打印了个位数
`
printf("%d",n%10)会打印传入数字n的个位数,然后
n/10 ? output(n/10) : (n = 0);`
相对复杂一些,在C语言中称为三目运算符,意思是n/10为真则执行冒号前的表达式,否则执行冒号后的表达式,在我看来冒号后的表达式是任何都不会影响程序执行结果,因为如果传入n为一位数字我再printf中已经将其打印出来了。实际递归写成如下形式可能更好理解: