1. 程式人生 > >(c/c++)實現逆序輸出整數的幾種方法

(c/c++)實現逆序輸出整數的幾種方法

第一種:

int  n;

printf("請輸入一個 整數");

scanf("%d",&n);

while(n!=0) {

printf("%d",n%10);//輸出各位數

n=n/10;//降階

}

printf("\n");

第二種:

將第一種用for語句實現,本質上與第一種方法沒有多大區別:

int  n;

printf("請輸入一個 整數");

scanf("%d",&n);

for(n;n!=0;n/=10)

printf("%d",n%10);

printf("\n");

第三種:

上面的方法都存在多次呼叫printf函式的問題,而呼叫函式是需要額外的空間的時間的,這將會降低程式的執行速度。雖然在這裡的呼叫次數並不多,但是這是應該考慮到的,

畢竟效率是評價程式的一個重要指標。

用一個變數來儲存逆序後的數,只需呼叫一次printf函式。

int  n,m=0;//m為儲存逆序整數的變數

printf("請輸入一個 整數");

scanf("%d",&n);


while(n!=0) {
m=m*10+n%10;
n=n/10;
}
printf("%d\n",m);

顯然第三種方法更優一些。