7-25 念數字


7-25 念數字(15 分)

輸入一個整數,輸出每個數字對應的拼音。當整數為負數時,先輸出fu字。十個數字對應的拼音如下:

0: ling
1: yi
2: er
3: san
4: si
5: wu
6: liu
7: qi
8: ba
9: jiu

輸入格式:

輸入在一行中給出一個整數,如:1234

提示:整數包括負數、零和正數。

輸出格式:

在一行中輸出這個整數對應的拼音,每個數字的拼音之間用空格分開,行末沒有最后的空格。如 yi er san si

輸入樣例:

-600

輸出樣例:

fu liu ling ling

思路:輸入整形,如果為負數輸出Fu,然后先將數字取絕對值,在變為字符串,最后進行循環輸出。
 1 #include<stdio.h>
 2 #include<string>
 3 #include<sstream>
 4 #include<iostream>
 5 using namespace std;
 6 int main()
 7 {
 8     int n; cin >> n;
 9     
10     if (n < 0){            //判斷是否輸出FU,並將其變為正數
11         cout << "fu ";
12         n *= -1;
13     }
14     string numb;
15     stringstream ss;        //轉換為string類型
16     ss << n;
17     ss >> numb;
18 
19     for (int i = 0; i < numb.length(); i++)        //循環輸出
20     {
21         switch (numb[i])
22         {
23         case '0':cout << "ling"; break;
24         case '1':cout << "yi"; break;
25         case '2':cout << "er"; break;
26         case '3':cout << "san"; break;
27         case '4':cout << "si"; break;
28         case '5':cout << "wu"; break;
29         case '6':cout << "liu"; break;
30         case '7':cout << "qi"; break;
31         case '8':cout << "ba"; break;
32         case '9':cout << "jiu"; break;
33 
34         }
35         if (i != numb.length() - 1) cout << " "; //行末沒有最后的空格
36     }
37     cout << endl;
38     return 0;
39 }

 



免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM