用遞歸法將一個整數n轉換成字符串。
比如,輸入483,應輸出字符串“483”。n的位數不確定,能夠是隨意位數的整數。
#include "stdafx.h"
#include<iostream>
using namespace std;
void s(int n)
{
int i;
if((i=n/10)!=0) s(i); //假設個位以上還有高位。則再次調用函數s
putchar(n%10+'0'); //+'0' 能夠將整型數字轉換為字符格式的數字。-'0' 則能夠將字符格式的數字轉換為整型數字
}
//以123為例。第一次遞歸得到123除以10的余數3,第二次遞歸得到12除以10的余數2,第三次遞歸得到1,至此遞歸結束。開始打印數字,最先打印的是最后一次遞歸得到的字符1
int _tmain(int argc, _TCHAR* argv[])
{
int n;
cin>>n;
if(n<0)
{
putchar('-');
n=-n;
//假設n是負數。則先打印負號,再將n轉化為它的相反數進行計算
}
s(n); //調用沒有返回值的函數s
return 0;
}
