
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
<code>using System;</code>
<code>using System.Text;</code>
<code>namespace</code> <code>money</code>
<code>{</code>
<code> </code><code>class</code> <code>Program</code>
<code> </code><code>{</code>
<code> </code><code>static</code> <code>void</code> <code>Main(string[] args)</code>
<code> </code><code>{</code>
<code> </code><code>StringBuilder sb=</code><code>new</code> <code>StringBuilder();</code>
<code> </code><code>var</code> <code>strValue = Console.ReadLine();</code>
<code> </code><code>var</code> <code>strlist = strValue.Split(</code><code>'.'</code><code>);</code>
<code> </code><code>if</code> <code>(strlist.Length >= </code><code>2</code><code>)</code>
<code> </code><code>{</code>
<code> </code><code>var</code> <code>temp = strlist[</code><code>1</code><code>];</code>
<code> </code><code>if</code> <code>(temp.Length >= </code><code>2</code><code>)</code>
<code> </code><code>{</code>
<code> </code><code>if</code> <code>(temp[</code><code>0</code><code>] != </code><code>'0'</code><code>)</code>
<code> </code><code>sb.Append(GetChinese(Convert.ToInt32(temp[</code><code>0</code><code>].ToString()))).</code>
<code> </code><code>Append(</code><code>"角"</code><code>).</code>
<code> </code><code>Append(GetChinese(Convert.ToInt32(temp[</code><code>1</code><code>].ToString()))).</code>
<code> </code><code>Append(</code><code>"分"</code><code>);</code>
<code> </code><code>else</code>
<code> </code><code>sb.Append(GetChinese(</code><code>0</code><code>));</code>
<code> </code><code>}</code>
<code> </code><code>else</code>
<code> </code><code>sb.Append(GetChinese(Convert.ToInt32(temp[</code><code>0</code><code>].ToString()))).Append(</code><code>"角"</code><code>);</code>
<code> </code><code>}</code>
<code> </code><code>int</code> <code>stateNum = </code><code>0</code><code>;</code>
<code> </code><code>int</code> <code>tempNum = Convert.ToInt32(strlist[</code><code>0</code><code>]);</code>
<code> </code><code>string outline = string.Empty;</code>
<code> </code><code>while</code> <code>(tempNum></code><code>0</code><code>)</code>
<code> </code><code>int</code> <code>g = tempNum%</code><code>10</code><code>;</code>
<code> </code><code>if</code> <code>(g == </code><code>0</code><code>)</code>
<code> </code><code>outline += (stateNum!=</code><code>0</code><code>)?GetChinese(g):string.Empty;</code>
<code> </code><code>while</code> <code>(g == </code><code>0</code><code>)</code>
<code> </code><code>{</code>
<code> </code><code>stateNum++;</code>
<code> </code><code>tempNum = tempNum / </code><code>10</code><code>;</code>
<code> </code><code>g = tempNum % </code><code>10</code><code>;</code>
<code> </code><code>}</code>
<code> </code><code>outline += (stateNum <= </code><code>4</code><code>) ? GetDW(stateNum) : GetDW((stateNum + </code><code>1</code><code>) / </code><code>4</code><code>);</code>
<code> </code><code>outline += GetChinese(g);</code>
<code> </code><code>tempNum = tempNum / </code><code>10</code><code>;</code>
<code> </code><code>stateNum++;</code>
<code> </code><code>if</code> <code>(stateNum == </code><code>5</code><code>)</code>
<code> </code><code>string right = string.Empty;</code>
<code> </code><code>for</code> <code>(</code><code>int</code> <code>i = outline.Length-</code><code>1</code><code>; i >= </code><code>0</code><code>; i--)</code>
<code> </code><code>right += outline[i].ToString();</code>
<code> </code><code>Console.WriteLine(right+sb.ToString());</code>
<code> </code><code>Console.ReadKey();</code>
<code> </code><code>}</code>
<code> </code><code>private</code> <code>static</code> <code>string GetDW(</code><code>int</code> <code>i)</code>
<code> </code><code>switch</code> <code>(i)</code>
<code> </code><code>case</code> <code>0</code><code>:</code>
<code> </code><code>return</code> <code>"元"</code><code>;</code>
<code> </code><code>case</code> <code>1</code><code>:</code>
<code> </code><code>return</code> <code>"十"</code><code>;</code>
<code> </code><code>case</code> <code>2</code><code>:</code>
<code> </code><code>return</code> <code>"百"</code><code>;</code>
<code> </code><code>case</code> <code>3</code><code>:</code>
<code> </code><code>return</code> <code>"千"</code><code>;</code>
<code> </code><code>case</code> <code>4</code><code>:</code>
<code> </code><code>return</code> <code>"萬"</code><code>;</code>
<code> </code><code>return</code> <code>null</code><code>;</code>
<code> </code><code>private</code> <code>static</code> <code>string GetChinese(</code><code>int</code> <code>i)</code>
<code> </code><code>return</code> <code>"一"</code><code>;</code>
<code> </code><code>return</code> <code>"二"</code><code>;</code>
<code> </code><code>return</code> <code>"三"</code><code>;</code>
<code> </code><code>return</code> <code>"四"</code><code>;</code>
<code> </code><code>case</code> <code>5</code><code>:</code>
<code> </code><code>return</code> <code>"五"</code><code>;</code>
<code> </code><code>case</code> <code>6</code><code>:</code>
<code> </code><code>return</code> <code>"六"</code><code>;</code>
<code> </code><code>case</code> <code>7</code><code>:</code>
<code> </code><code>return</code> <code>"七"</code><code>;</code>
<code> </code><code>case</code> <code>8</code><code>:</code>
<code> </code><code>return</code> <code>"八"</code><code>;</code>
<code> </code><code>case</code> <code>9</code><code>:</code>
<code> </code><code>return</code> <code>"九"</code><code>;</code>
<code> </code><code>return</code> <code>"零"</code><code>;</code>
<code> </code><code>}</code>
<code>}</code>
本文轉自 tongling_zzu 51CTO部落格,原文連結:http://blog.51cto.com/tongling/1234239