如果是負數,要把它轉換爲正數,並輸出一個‘-’。covert函數只處理正數。
#include<stdio.h>
void main()
{
void covert(int n);
int number;
printf("input an integer:");
scanf("%d",&number);
printf("output:");
//將負數轉換爲正數,並添加'-'
if(number<0)
{
putchar('-');
number=-number;
}
convert(number);
printf("\n");
}
//遞歸函數
void convert(int n)
{
int i;
if((i=n/10)!=0)
convert(i);
putchar(n%10+'0');
}
例如輸入 456,調用convert函數n=456, 第一次:i=45,調用convert函數,第二次:i=4,調用convert函樹,第三次:i=0,執行putchar,返回上一次調用convert處…..