為了逐位輸出整數,無論是正序還是逆序,都需要將每壹位分開。
C中的做法是取10的余數,取出壹位,然後除以10,達到“移位”的效果。
二、算法設計:
1.輸入要處理的整數;
2.把大家都拿出來;
3.遞歸調用,以當前值除以10為參數;
4.值為0時退出。
正序和逆序輸出取決於遞歸調用和輸出的位置關系。
三、參考代碼:
正序:
#包含?& ltstdio.h & gt
作廢?func(int?n)
{
int?五;
if(n==0)?返回;//0的結尾。
v = n % 10;//取出位。
func(n/10);//遞歸調用
printf("%d?",?五);//輸出。
}
int?主()
{
int?n;
scanf("%d ",& ampn);//輸入。
func(n);//調用函數以正序輸出所有位。
回歸?0;
}逆序:
#包含?& ltstdio.h & gt
作廢?func(int?n)
{
int?五;
if(n==0)?返回;//0的結尾。
v = n % 10;//取出位。
printf("%d?",?五);//輸出。
func(n/10);//遞歸調用
}
int?主()
{
int?n;
scanf("%d ",& ampn);//輸入。
func(n);//調用函數以正序輸出所有位。
回歸?0;
}