2. 递归-倒序数(Recursion - reverse num)WA0分救救,代码不输出

题目ID:3648必做题100分
最新提交:Wrong Answer0 分
历史最高:Wrong Answer0 分
时间限制: 1000ms
空间限制: 524288kB
题目描述
时间:1s 空间:256M
题目描述
用递归算法写程序,输入一个非负整数,输出这个数的倒序数。
输入格式
输入一个非负整数n。
输出格式
输出倒序结果。
样例输入123
样例输出321

约定
0<a<=2𝑒9
#include <bits/stdc++.h>
using namespace std;
int main() {
int a;
string s;
cin>>a;
for(int i=1;i<=11;i++)
{
while(a)
{
s[i]=a%10;
a/=10;
}
}
for(int i=1;i<=s.length();i++)
{
cout<<s[i]-‘0’;
}
return 0;
}

你的s字符串没有初始化,而且长度也没有写好,要么你操作时不要那个i的for循环,改成s+=to_string(a%10),并且输出的时候从0开始到s.length()-1结束,要么你定义的时候string s(12," ");

还有就是你可以输入一个字符串,然后倒着输出就行。比如这样。

string s;cin>>s;
reverse(s.begin(),s.end());//倒叙函数
cout<<s;
1 个赞

y已经从新写了一遍了
#include
using namespace std;
void re(int n) {
if (n<10) {
cout<<n;
}
else {
cout<<n%10;
re(n/10);
}
}
int main() {
int n;
cin >> n;
re(n);
cout << endl;
return 0;
}

AC了