這題看到網上有許多方法,我是這樣想的,先將所有位上的數的和求出來,再去用中文拼音表示出這個數字,剛開始做的時候以為這個和不止三位,=。=,ac之後才發現確實只有3位,或者2位,或者1位,那麼就不用考慮的那麼複雜了,求出來之後直接分解就好。1.求和部分,受y總高精度加法的啟發,感覺直接讀入字串,然後通過標頭檔案"vector"裡面的size(),儲存直接用向量來存就可了,這樣表示比較方便,將字串中的數字乙個個轉換成陣列裡的數後再求和就好了。2.拼音表示部分,用字元陣列儲存好拼音(不太會*),後續輸出注意空格。貼個**
#include #include using namespace std;
char s[10]=;//定義該陣列,注意是二維的
int main()
else if(sum/10>0&&sum/10<=9) //2位
else //1位
printf("%s",s[sum]);
return 0;
}
pta乙級真題的第二題,這題說實話沒想到的是最後這個分解原來只有三位,求和的話我覺得這種方法求長整數所有位數上數字的和比較方便,高精度演算法中也能用到這種方法。(->戳y總) 2020/10/16 PTA 1002寫出這個數
1002 寫出這個數 20 20 分 讀入乙個自然數n,計算其各位數字之和,用漢語拼音寫出和的每一位數字。輸入格式 每個測試輸入包含1個測試用例,即給出自然數n的值。這裡保證n小於10 100 輸出格式 在一行內輸出n的各位數字之和的每一位,拼音數字間有1 空格,但一行中最後乙個拼音數字後沒有空格。...
PTA 1002 寫出這個數
讀入乙個正整數 n,計算其各位數字之和,用漢語拼音寫出和的每一位數字。每個測試輸入包含 1 個測試用例,即給出自然數 n 的值。這裡保證 n 小於 10 100 在一行內輸出 n 的各位數字之和的每一位,拼音數字間有 1 空格,但一行中最後乙個拼音數字後沒有空格。123456789098765432...
PTA 1002 寫出這個數
讀入乙個正整數 n,計算其各位數字之和,用漢語拼音寫出和的每一位數字。輸入格式 每個測試輸入包含 1 個測試用例,即給出自然數 n 的值。這裡保證 n 小於 10 100 輸出格式 在一行內輸出 n 的各位數字之和的每一位,拼音數字間有 1 空格,但一行中最後乙個拼音數字後沒有空格。輸入樣例 123...