問題描述:
正序輸出整數的每一位;例如:輸入1234,輸出1234思路:
方法一:遞迴實現**:利用遞迴的特點,當遞迴到整數的最高位時,輸出並開始返回
方法二:利用陣列儲存
將整數的每一位以字元形式儲存到陣列當中,並將其輸出
//遞迴實現
void printr(int n)
//陣列儲存
void printnonr(int n)
//開闢陣列
char* arr=(char*)malloc(sizeof(char)*(count+1));
assert(arr);
memset(arr,0,sizeof(char)*(count+1));
for(i=0;i//將數字的每一位以字元形式儲存在陣列中
arr[i]=n%10+'0';
n/=10;
}for(i=count-1;i>=0;i--)
printf("\n");
}
結果: 輸出乙個整數的每一位
大家有沒有發現這種方法是吧整數的每一位都列印出來了但是他是逆序列印出來的。那我們怎麼才能正序列印呢 請看下面的方法,親!解題思路 把乙個整數分成兩部分列印,當這個整數是兩位或者兩位以上的數,要拆長最後一位和前面n 1位數的列印。例如 num是1234 1 先判斷他是幾位數 用if n 9 大於9說明...
列舉獲取整數的每一位
b1016考察的關鍵是如何列舉獲取整數的每一位。乙個整數a,對a取余能拿到它的個位,令a除以10能讓a去掉個位。如123,a 123 10,則a為3,a a 10,則a為12。列舉獲取每一位,只要用乙個迴圈控制,每次判斷a有沒有變成0 即取完了最後的個位 在每次迴圈中,獲取它的個位。考察的另乙個關鍵...
程式設計實現 輸出乙個整數的每一位。
問題描述 輸出乙個整數的每一位。例如 給乙個數1234,在螢幕上列印出來1 2 3 4 解決方法 拆分整數的每一位,然後列印一下 例如 12 首先12 10拿出來2,然後在12 10剩餘1,列印出來就好了 include includeint main printf n system pause r...