看板 C_and_CPP 關於我們 聯絡資訊
http://zerojudge.tw/ShowProblem?problemid=a008 這是問題 不過的測資是input: 100000 我在dev測試:壹拾萬(正確) 但上傳後輸出是:壹拾(錯誤) 以下是小弟的程式碼請大家看看 另外小弟新手上路 寫的又臭又長 如果能提出建議的話 非常感謝@@ #include <iostream> #include <math.h> using namespace std; int a,b,c,d; string g[11]="零"; int main() { while(cin>>a) { b=0; while(a!=0) { c=a%10; switch(c) { case 0: g[b]="零"; break; case 1: g[b]="壹"; break; case 2: g[b]="貳"; break; case 3: g[b]="參"; break; case 4: g[b]="肆"; break; case 5: g[b]="伍"; break; case 6: g[b]="陸"; break; case 7: g[b]="柒"; break; case 8: g[b]="捌"; break; case 9: g[b]="玖"; break; } a=a/10; b++; } b--; for(c=b;c>=0;c--) { if(g[c]!="零") { cout<<g[c]; switch(c) { case 1: cout<<"拾"; break; case 2: cout<<"佰"; break; case 3: cout<<"仟"; break; case 4: cout<<"萬"; break; case 5: cout<<"拾"; break; case 6: cout<<"佰"; break; case 7: cout<<"仟"; break; case 8: cout<<"億"; break; case 9: cout<<"拾"; } } } if(g[0]=="零"&&g[1]=="零"&&g[2]=="零"&&g[3]=="零"&&g[4]=="零") //修正特 例 { if(g[9]!="零"&&g[8]=="零") cout<<"億"; else if ( g[9]=="零"&&g[8]=="零") cout<<"萬"; } cout<<endl; } return 0; } -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.228.106.198
snowlike:108000, 100800 +-*/%不需include math 10/20 08:32