- 综合讨论区
- 帖子详情
关于switch的疑问
这名字也太难了
发表于2017年05月05日
<p>package demol;</p><p>import java.util.*;</p><p>public class Main {</p><p><br ></p><p> public static void main(String[] args) {</p><p> </p><p> </p><p> Scanner in=new Scanner(System.in);</p><p> int n=in.nextInt();</p><p> int m=0;</p><p> boolean b=true;</p><p> String s="";</p><p> if(n<0)</p><p> {</p><p> b=false;</p><p> n=n*-1;</p><p> }</p><p> do</p><p> {</p><p> m=n%10;//这里明明倒着输出的 ,为什么在switch里面有正向输出了里 <code class="brush:java;toolbar:false" ><br ></code></p><p> n=n/10;</p><p> switch(m)</p><p> {</p><p> case 1: </p><p> s=" yi"+s;System.out.println(s);</p><p> break;</p><p> case 2: </p><p> s=" er"+s;System.out.println(s);</p><p> break;</p><p> case 3: </p><p> s=" san"+s;System.out.println(s);</p><p> break;</p><p> case 4: </p><p> s=" si"+s;System.out.println(s);</p><p> break;</p><p> case 5: </p><p> s=" wu"+s;System.out.println(s);</p><p> break;</p><p> case 6: </p><p> s=" liu"+s;System.out.println(s);</p><p> break;</p><p> case 7: </p><p> s=" qi"+s;System.out.println(s);</p><p> break;</p><p> case 8: </p><p> s=" ba"+s;System.out.println(s);</p><p> break;</p><p> case 9: </p><p> s=" jiu"+s;System.out.println(s);</p><p> break;</p><p> case 0: </p><p> s=" ling"+s;System.out.println(s);</p><p> break; </p><p> </p><p> }</p><p> }while(n!=0);</p><p> if(b==false) s="fu"+s;</p><p> s=s.trim();</p><p> System.out.println(s);</p><p> </p><p> </p><p> }</p><p><br ></p><p>}</p><p>输出是这样的</p><p>-34</p><p> si//不是先读入了四后读入三吗,怎么输出又返回来了</p><p> san si</p><p>fu san si</p><p><br ></p>