輸出1到最大的n位數

2021-07-11 20:04:50 字數 553 閱讀 5730

題目:輸入數字n,按順序列印出從1到最大的n位十進位制數。

eg:輸入3,輸出1 2 3 一直到999。

**思路:**n有可能是乙個很大的數,要考慮到大數問題。用陣列或字串表達大數。用字串表示數字的時候,最直觀的方法就是字串裡每乙個字元都是『0』到『9』之間的某乙個字元,用來表示數字中的一位。因為數字最大是n位,因此需要乙個n+1位的字串。當實際長度不夠n位時,在前面補0。

#include

#include

using

namespace

std;

bool add(char *num)

if (sum >= 10)

}else

}return overflow;

}void printnum(char *num)

cout

<< " ";

}void print(int n)

delete num;

}int main()

輸出1到最大的N位數

from 演算法一 最直觀的演算法,求出最大的n位數是多少,然後乙個迴圈列印。cpp view plain copy void print1tomaxofndigits1 intn 演算法二 字串表示大數 當n很大時,演算法一可能會溢位,所以考慮大數問題一般用陣列或字串。用字串表達數字的時候,最直觀...

輸出1到最大的N位數

輸出1到最大的n位數 原文 演算法一 最直觀的演算法,求出最大的n位數是多少,然後乙個迴圈列印。cpp view plain copy void print1tomaxofndigits1 intn 演算法二 字串表示大數 當n很大時,演算法一可能會溢位,所以考慮大數問題一般用陣列或字串。用字串表達...

輸出1到最大的N位數

題目 輸入數字 n,按順序輸出從 1最大的n位 10進製數。比如輸入 3,則輸出1 2 3一直到最大的 3位數即 999。分析 這是一道很有意思的題目。看起來很簡單,其實裡面卻有不少的玄機。應聘者在解決這個問題的時候,最容易想到的方法是先求出最大的 n位數是什麼,然後用乙個迴圈從 1開始逐個輸出。很...