列印1到最大的N位數

2021-06-28 11:59:18 字數 977 閱讀 1652

題目描述:給定乙個數字n,列印從1到最大的n位數。

輸入:每個輸入檔案僅包含一組測試樣例。

對於每個測試案例,輸入乙個數字n(1<=n<=5)。

輸出:對應每個測試案例,依次列印從1到最大的n位數。

樣例輸入:

樣例輸出:

#include #include int main()

{ int i,n,max;

while(scanf("%d",&n) != eof)

{max = (int)(pow(10,n)+0.5);

// printf("max=%d\n",max);

for(i=1;i

其中:

(int)pow(10,2)

輸出的結果:99 而不是100

原因:引數是double型別,儲存格式與int型別不容,有誤差

改進:(int) (pow(10,2) + 0.5) 即可。

列印1到最大的n位數

輸入數字n,按順序列印出1到最大的n位十進位制數。比如輸入3,則列印出1 2 3一直到最大的3位數即999。方法1 利用case語句使字元 char charplus char a if numchar len 0 判斷是否向高位移動,如果該為由9 0,則向高位移動 if flag numchar ...

列印1到最大的n位數

劍指offer用的是字串,還要苦逼的字串比較,看是否進製。直接用整型陣列來儲存。include include using namespace std 乙個int儲存幾位數 const int int num 2 每位數最大值,超過這個要進製 不包括最高位 const int int max 99 ...

列印1到最大的n位數

1.問題描述 輸入數字n,按順序列印出從1刀最大的n位數的十進位制數。比如輸入3,則列印出1,2,3一直到最大的3位數999.來自 劍指offer 2.分析 對於這個問題,我們需要考慮大數。因此我們在字串上模擬加法運算。3.ntakeover代表進製,isnotoverflow代表有沒有溢位 是不是...