看板 C_and_CPP 關於我們 聯絡資訊
噢感謝兩位回答 和舉出我108000和100800之類的會掛@@ 現在我修正過了 在最下面 不過問題識 1. 我現在大概只會基本的function 迴圈 array 以上兩位的看不太懂說@@? 2.改過之後第七測資過了 現在是死第八個 100200應該要"十萬零兩佰" 我沒有那個零 Orz #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(c==5&&g[4]=="零") cout<<"萬"; if(c==6&&g[4]=="零"&&g[5]=="零") cout<<"萬"; if(c==7&&g[4]=="零"&&g[5]=="零"&&g[6]=="零") cout<<"萬"; if(c==9&&g[8]=="零") cout<<"億"; } } cout<<endl; } return 0; } -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.228.100.169