從1到n 列印數字 (使用字串表示乙個大數)

2021-08-27 21:28:11 字數 519 閱讀 8365

使用字串表示乙個大數

題目:列印從1到n 的數

n是多大我們並不知道,有可能已經超出了計算機所能表示的最大的數,所以此時需要使用字串或陣列來表示乙個任意大小的數,並對其進行列印,對於列印下面有兩種方法

使用加法模擬

void printnum(int n)

}print(str,n);

}free(str);

str = null;

}

從一到n的數相當於是0到9的n位數的全排列,將所有的全排列列印就相當於是模擬n位的十進位制數

使用全排列進行求解,通過遞迴的呼叫類似於回溯的方法從前往後,由0到9改變值

void printnumr(char* str,int len,int n)

for (i = 0; i < 10; i++) //從前往後通過遞迴由0到9進行全排列

}int main()

return

0;}

如何不用迴圈列印數字1到n

題目 如何列印數字1 到n,限制條件是不用迴圈實現 即實現中不用for,while等迴圈語句 首先你想到的是用遞迴函式實現 void print2n int n printf d n n 寫遞迴函式的優點是 簡潔,但思路一定要清晰。就是這個看似很簡單的小問題筆者面試的數十人中還是有好多人回答不上來,...

字串 列印1到最大的n位數

題目描述 輸入位數n,要求列印出從1到最大的n位數。舉例來說,若輸入 則列印 到 999 思路 首先,不能簡單的使用int 或者 long 等型別來完成此題,因為要考慮大數問題,所以需要使用字串來模擬。方法是使用乙個長為 n 1 的陣列number n 1 來實現,初始時把前n位的值置為 0 最後一...

使用字串來表示UIView的tag值

首先宣告這個方法非我原創!這是乙個同學想出來的 下面我們來說一下具體實現,使用tag值時,因為是乙個毫無意義的數字,使用起來不免麻煩 加入我們使用字串來設定tag值,例如 alabel的tag值為 alabel 我們定義檢視的時候,肯定不會定義相同名字的,那麼這樣是不是就更便於記了呢。下面就來具體說...