數字處理是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...