輸出一個數的每一位數
阿新 • • 發佈:2019-02-08
一個數的各個位的輸出,需要靈活利用%和/,並且對於每一個數值應該即取即用。
如使用for迴圈將數字從後往前輸出
#include <stdio.h> #include <math.h> void Show(int n) { int i; int tmp; //臨時變數,用來儲存獲取數值 for(i=1;n!=0;i++) { tmp=n%10; //求最後一位的數,用%對其取餘 printf("%d\n",tmp); //列印獲取的臨時變數 n/=10; //用/將最後一位數值丟棄 } } int main() { Show(12345); return 0; }
用while迴圈也可以做到
#include <stdio.h> #include <math.h> void PrintOrder(int n) { int m=n; int count=1; //計算n的位數 for(int i=1;m!=0;i++) { count*=10; m/=10; } count/=10; //多計算了一位,所以需要除以10 while(n != 0) { printf("%d ",n/count); //將n中第一位數輸出 n %= count; //將首位數字去掉,保留後面的數 count /= 10; //將計數器減去一位 } } int main() { PrintOrder(12345); return 0; }