輸入格式:每個測試輸入包含1個測試用例,即給出自然數n的值。這裡保證n小於10^100^。
輸出格式:在一行內輸出n的各位數字之和的每一位,拼音數字間有1 空格,但一行中最後乙個拼音數字後沒有空格。
輸入樣例:
1234567890987654321123456789
輸出樣例
:
yi san wu
#include int main();
int a[100];
int t=0;
//輸出10的18次方以內沒問題哦.
scanf("%lld",&n);
//累加求n的各個位數之和
while(n!=0)
//看看sum是幾位數,用t記錄位數,並把每個數字存在陣列a中,
while(sum!=0)
//巢狀陣列對映,將數字轉化成對應的拼音
for(int i=t;i>0;i--)
return 0;
}
2.gets()方法在pat的oj上不能通過,最後採用c++的cin<<
#include#include #include using namespace std;
int main();
char c[100];
//gets(c);
cin>>c;
int a[10]=;
int sum=0;
int t=0;
for(int i=0;i1;j--)
return 0;
}
3.第三方法**能少點:
#includeint main()
; while ((ch = getchar()) != '\n') //如果一直輸入字元,不按回車的話
sum += (ch - '0');
sprintf(s, "%d", sum); // sprintf(char *buffer, const char *format,[ argument])將任意型別資料按某種格式轉換成字串
for (int i = 0; s[i] != 0; i++)
return 0;
}
summary:
整型和字元型可以通過ansⅱ的值來互換, 0的ansⅱ的值為 48.
字元的'0','1','2','3','4'等等,可以通過給它們減去 48或者'0'就可以得到他們的整型值了.
'9'-48=9;
取個位的方法: 數字%10;就可以得到
PAT1002 寫出這個數
讀入乙個自然數n,計算其各位數字之和,用漢語拼音寫出和的每一位數字。輸入格式 每個測試輸入包含1個測試用例,即給出自然數n的值。這裡保證n小於10100。輸出格式 在一行內輸出n的各位數字之和的每一位,拼音數字間有1 空格,但一行中最後乙個拼音數字後沒有空格。輸入樣例 123456789098765...
PAT 1002 寫出這個數
讀入乙個自然數n,計算其各位數字之和,用漢語拼音寫出和的每一位數字。輸入格式 每個測試輸入包含1個測試用例,即給出自然數n的值。這裡保證n小於10100。輸出格式 在一行內輸出n的各位數字之和的每一位,拼音數字間有1 空格,但一行中最後乙個拼音數字後沒有空格。輸入樣例 123456789098765...
PAT 1002 寫出這個數
讀入乙個自然數n,計算其各位數字之和,用漢語拼音寫出和的每一位數字。輸入格式 每個測試輸入包含1個測試用例,即給出自然數n的值。這裡保證n小於10100。輸出格式 在一行內輸出n的各位數字之和的每一位,拼音數字間有1 空格,但一行中最後乙個拼音數字後沒有空格。輸入樣例 123456789098765...