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

2021-08-20 03:25:07 字數 1126 閱讀 5556

//求任意乙個整數的位數

#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進行迴圈乘以10,得到1000;注:i為0時,power為1。

//此時再將1234除以1000得到商為1,將n重新賦值為餘數234,power除以10得到100;

//再將234除以100得到商為2,將n重新賦值為餘數34,power除以10得到10;

//再將34除以10得到商為3,將n重新賦值為餘數4,power除以10得到1;

//再將4除以1得到商為4,將n重新賦值為餘數0.

//將上述商依次不換行輸出,即為正序輸出1234

//設定i為計數器進行迴圈,i<4,即i為0,1,2,3,共迴圈四次;注:如i<=count,迴圈五次,結果出錯

void printorder(int n)

do while(n!=0);

printf("\n");

}

//計算乙個整數中出現1的個數

//將1234除10取餘,若得到的餘數為1,則將計時器count加一;將n重新賦值為n除以10的商,重複以上操作,直到n為0時結束,返回計數器的值即為所求

int countone(int n)

n/=10;

} return count;

}

//逆序輸出該整數

//如1234:將1234除以10得到商123,餘數4;再將123除以10得到商12,餘數3;再將12除以10得到商1,餘數2;再將1除以10得到商0,餘數1;

//將上述餘數依次不換行輸出,即為逆序輸出。結束條件為n等於0時結束。

int printreverse(int n)

while(n!=0);

return n;

}

輸出整數字數,並正序,逆序輸出各個位上的值

題目 給乙個不多於5 位的正整數,要求 求出它是幾位數 分別輸出每一位數字 按逆序輸出各位數字,例如原數為321,應輸出123。一般來說,統計整數的位數有兩種方法 1.使用if和else if將情況列舉出來 2.每次丟棄個位,利用n 10迴圈使用 int main while n 0 printf ...

正序逆序輸出正整數中各位數字

一 輸出整數各位數字 求出它是幾位數 分別列印出每一位數字 按逆序列印出各位數字。define crt secure no warnings include include intgetdigit int num 整數有多少位 return count void reprintnum int num...

求整數字數,以及順序與逆序輸出各位數字

1求位數,演算法 每次丟棄個位數字,計數器 直到n為0 與我們用眼睛去數類似,即不斷給該整數除以十,計數,此處要考慮當給的整數字0時的特殊情況,c 如下 int count long long n return tmp 2.逆序輸出 演算法 求出低位,輸出低位,再丟棄低位,重複執行直到n為0 這裡關...