基於數字處理的問題總結

2021-09-18 05:30:43 字數 1301 閱讀 1918

數字處理是c語言中極為重要的乙個板塊,有關於數字處理常見的有以下幾個問題:

1、統計輸入的數字n是幾位數;

2、順序輸出每一位數字;

3、逆序輸出每一位數字;

則針對於以上問題我們常見的解法有:丟棄高位或者丟棄低位,得到高位或者得到低位,我們用到最多的便是整除與取餘。

例題:給乙個不多於五位數的正整數,要求:

(1)求出它是幾位數;

(2)分別輸出每一位數字;

(3)按逆序輸出各位數字,例如原數為321,應輸出123;

(1)求數字個數需要利用計數器 count 來標記輸入的數字的位數,利用迴圈,輸入的數字 n依次 n /= 10 來實現丟棄個位數字(整除結果為整數,若不為整數,則去掉小數部分),每丟棄一位則計數器count++,直到n=0,輸出count。

while迴圈則需要特別注意單獨討論當n=0,輸出1。

(2)求輸出每一位數字需要先得到高位數字接著丟棄高位;

由第一問我們可得到幾位數字;

接著我們用庫函式pow來得到除以和取餘的數字 int power = (int)pow(10.0,c-1)10的c-1次方,用這個數來得到高位,丟棄高位;

最後我們用乙個循壞來輸出每一位數字。

(3)逆序輸出各位數字需要用 n%10 來得到個位數字並輸出,接著用 n/=10 來丟棄個位數字得到下乙個n,一直迴圈直到n=0。

(1)

#include int getfigures(int n)

else

return count; }}

int main()

#include int getfigures(int n)

while(n != 0);

return count;

}int main()

(2)

#include #include int getfigures(int n)

while(n != 0);

return count;

}void printorder(int n)

while(n != 0);

printf("\n");

}int main()

(3)

#include void printreverse(int n)

while(n!=0);

printf("\n");

}int main()

基於數字處理的部分總結

關於數字處理,例如計算位數,以及輸出每位的數字,首先即是學會 丟棄高位 和 丟棄低位 例 給出乙個正整數 1 求出它是幾位數 2 順序輸出各位數字 3 逆序輸出各位數字 c語言中,整數除以整數的結果必然為整數,如15 10 1,31 5 6 因此若是給定的正整數為n,我們可以用n 10來丟棄個位,直...

C C 數字處理函式總結

1.絕對值 標頭檔案 函式原型 int abs int x long abs long x double abs double x long double abs long double x float abs float abs 返回 x的絕對值 2.浮點數絕對值 標頭檔案 函式原型 double...

XDOJ 數字處理

標題 數字處理 類別函式與遞迴 時間限制 2s記憶體限制 1000kb 問題描述 編寫乙個程式,從鍵盤輸入乙個非零整數n 0 n 1000000000 對整數n進行如下處理 將整數的各位數字取出來相加,如果結果是一位數則輸出該數,否則重複上述過程,直到得到的結果為一位數,並輸出該結果。例如 n 45...