我是一名編程初學者。我正在編寫學校作業,並要求我使用遞歸將逗號添加到字符串中。我大部分都完成了,但是當我輸入一個大於一百萬的數字時,它不會在第一個數字前添加逗號。這是我到目前爲止:如何使用遞歸將逗號添加到字符串
// commas - Convert a number (n) into a string, with commas
string commas(int n) {
ostringstream converted;
converted << n;
string number = converted.str();
int size = number.length();
if (size < 4)
{
return number;
}
if (size >= 4)
{
return number.substr(0, number.size() - 3) + "," + number.substr(number.size() - 3, number.length());
}
}
任何幫助將不勝感激!
函數名是如何命名的?遞歸調用在哪裏?顯示更多代碼。第二個「if」可能只是一個「else」 –
遞歸在哪裏? – uncletall
您不會爲'1000000'添加特殊情況,因此它看起來像是'1000,000'。 – 2014-02-28 07:47:07