我有一個賦值來編寫遞歸函數,該函數以相反的順序寫入正整數的數字。我的問題是該功能不能正確顯示反轉。我知道我應該使用%或10時顯示數字和//10時,在遞歸調用以及基本情況應該是< 10.這是我的代碼。以相反順序的正整數的遞歸函數數字C++
#include <iostream>
using namespace std;
int reverse(int,int);
int main()
{
int number;
int n;
cout << " Enter number to reverse." << endl;
cin >> number;
cout << reverse(number % 10,0);
return 0;
}//end main
int reverse(int number,int n)
{
if(n < 10)
{
return n;
}
else
{
return reverse(number/10,n);
}
}// end reverse
很難想象你如何在這裏實現事情。對於初學者來說,你的'n'總是0,總是<10,因此你總是會返回0.即使n是可變的,有時可能大於10,它永遠不會改變,所以你會進入無盡的遞歸。 – mah