ZZULIOJ 1061:顺序输出各位数字
生活随笔
收集整理的這篇文章主要介紹了
ZZULIOJ 1061:顺序输出各位数字
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
順序輸出各位數字
題目描述
輸入一個不大于10的9次方的正整數,從高位開始逐位分割并輸出各位數字。
輸入
輸入一個正整數n,n是int型數據
輸出
依次輸出各位上的數字,每一個數字后面有一個空格,輸出占一行。例如,輸入 12345 ,輸出 1 2 3 4 5
樣例輸入 Copy
12345
樣例輸出 Copy
1 2 3 4 5
提示
注意整數運算避免使用double類型的函數如pow()。
本題可先用一個循環計算出最高位的位權h,然后再用一個循環,循環內容為: 輸出最高位(n/h)、扔掉最高位(n = n%h)、降低最高位位權(h = h/10),直到位權h為0。
#include<stdio.h> #include<math.h> int main() {int a,b,c,n,led,h;scanf("%d",&n);led=(int)log10(n)+1;//計算n是幾位數, while(led--)//幾位數循環幾次 {h=1;//每次循環使h初始化等于1,方便輸出最高位 扔掉最高位 c=led;//為下一步準備,防止影響led的值 while(c--){h*=10;}a=n/h;//輸出最高位 b=n%h;//扔掉最高位 n=b;// 把扔掉最高位的值賦值給n; printf("%d ",a);}return 0; }
總結
以上是生活随笔為你收集整理的ZZULIOJ 1061:顺序输出各位数字的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: ZZULIOJ 1085: 求奇数的乘积
- 下一篇: 5.有2个数组,第一个数组内容为:[黑龙