C語言 整數n中數字的個數,逆序輸出,順序輸出。

2021-08-20 04:49:54 字數 979 閱讀 8303

little fairy的第四篇部落格。

輸入整數n。

一、計算整數n中數字的個數。

方法:丟棄個位數字(n/進製)。

例如:n=1234,n/=10 (1) -> n=123 (2),n/=10 -> n=12,n/=10 (3) ->n=1,n/=10 (4) -> n=0 。所以1234中含有數字的個數為4。

注意:這個如果用while迴圈也可以做,但是如果輸入的數字為0,輸出也為0,明顯錯誤。所以如果想用while迴圈實現,則需要加乙個if語句,判斷n=0的情況。

二、將整數n逆序輸出。

方法:得到個位數字(n%進製)。

例如:n=1234,n%=10 ---4  -> n=123,n%=10 ---3 ->n=12,n%=10 ---2 -> n=1,n%=10 ---1 -> n=0;所以1234逆序輸出為4321。

三、將整數n正序輸出。

方法:得到最高位。

例如:n=1234,n/1000  ---1 ->n%1000 ,n=234,n/100---2 ->n%100,n=34,n/10 ---3 -> n%10,n=4,n/1 ---4 -> n=0;所以1234正序輸出為1234。

注意:第二個for迴圈的時候,如果用while迴圈,若輸入整數最後乙個數字為0,執行結果沒有辦法輸出0。

練習:輸入乙個整數,統計其二進位制數里有幾個1。

整數n的倒數第k個數字

time limit 1 sec memory limit 128 mb 64bit io format lld 編寫程式輸出正整數n中從右端開始的第k個數字的值 k從1開始 例如 n 264539,k 3,則輸出5 n 7622,k 6,則輸出 1 注意 main函式已經給定 如下所示 請將程式補...

輸入n個整數,求出最小的K個數字

該問題我們可以先維護乙個大小為k的陣列karr,然後遍歷n個整數,當某個值比karr的最大的還要小時,就更新該陣列。如下 include include include include using namespace std void display int intarr,int length co...

求整數字數,正序逆序輸出,總計1的個數

求任意乙個整數的位數 includeint number int n int i 0 while n 0 return i 正序輸出整數 設定乙個計數器count,讓其等於位數函式中的返回值n 如1234 將power設定為1000 i小於 4 1 i可以為0,1,2,3,將power進行迴圈乘以1...