永发信息网

求一道Java编程题

答案:6  悬赏:70  手机版
解决时间 2021-05-04 21:04

1、 用户输入一个不多于5位的正整数,要求:

(1) 求出它是几位数

(2) 分别输出每一位数

(3) 按逆序输出各位数字,例如原数为123,应输出123

提示:可以把该数转换成字符串,再使用String的相关方法求出该数是几位数。分别输出各位数则可以使用整除和求余的方法来实现。

要求:程序中必须使用switch case语句,使用控制台显示方式。

最佳答案
这不是为难么。。在哪里能用到switch..case啊 = 口 = ???直接用String的方法+for语句就可以的啊。。
全部回答

Scanner scanner = new Scanner(System.in);

System.out.print("请输入一个数:"); String str = scanner.next(); for (int i = 0; i < str.length(); i++){ if (!Character.isDigit(str.charAt(i))){ System.out.print("输入的非整数"); return; } } //如果通过了上面的验证,说明输入的是数字.可以用方法转换 System.out.println("数的位数:" + str.length());

System.out.print("每个位的数分别是:"); for(int i = 0; i < str.length(); ++i) { System.out.print(str.charAt(i) + " "); } System.out.println(); System.out.print("逆序输出:"); for(int i = str.length() - 1; i >= 0; --i) { System.out.print(str.charAt(i)); } System.out.println(); }

用switch 纯属无聊

import java.io.*;

public class num { public static void main(String[] args) { System.out.print("Please input the number"); try { BufferedReader br=new BufferedReader(new InputStreamReader(System.in)); String str=br.readLine(); char[]nums=str.toCharArray(); System.out.println("The length is:\t"+str.length()); System.out.print("Every num is:\t"); for(int i=0;i<str.length();i++) System.out.print(nums[i]+" "); System.out.print("\nReverse num is:\t"); for(int i=str.length()-1;i>=0;i--) System.out.print(nums[i]); }catch(Exception ex) { ex.printStackTrace(); } }

}

回答人的补充 2009-10-23 21:20

import java.util.*;

class Main { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); System.out.print("请输入一个数:"); int n = scanner.nextInt();

String num = String.valueOf(n); System.out.println("数的位数:" + num.length());

System.out.print("每个位的数分别是:"); for(int i = 0; i < num.length(); ++i) { System.out.print(num.charAt(i) + " "); } System.out.println();

System.out.print("逆序输出:"); for(int i = num.length() - 1; i >= 0; --i) { System.out.print(num.charAt(i)); } System.out.println(); } }

可以用String的方法求出整数的位数

在swith()括号里面写上整数的位数

case 1:后面写上输出

case 2:这样写就行了吧

我觉得switch case的意思是判断分解出来的字符是0-9中的哪个吧,然后打印出来相应的数字,比如

switch("9"){

case "0":

System.out.print("0");

break;

.....

case "9":

System.out.print("9");

break; }

但是这样正如楼上所说,确实是脱裤子放屁,多此一举

我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
ipod 下载视频有网址在屏幕上 怎么消除呢
华龙商厦南门地址在什么地方,想过去办事
梦幻西游密码忘怎么办。
DNF按键不够 什么时候能和韩F 的按键
DNF广东1区 40级粉光剑 狱龙断影剑 下级 值多
美诚惠地址有知道的么?有点事想过去
目前索爱s312行货在南宁最新报价是多少?
2010年会计初级考试的书在书店有售吗?
我喜欢的一位老师作文.是我四年级的语文老师
帮我想一想炫舞舞团官职啦
上身长下身短,怎样才能让上身下身比例协调呢
谁能给我提供点灵异事件阿
鑫意商行地址有知道的么?有点事想过去
win7内置播放器好用不?
请告诉我几支经典中文歌曲名,多谢各位了
推荐资讯
DNF 号封了 里面的装备会少吗 ?
QQ音乐上不了QQ面板
600575、002219后期走势?
怎么样才能抓住一个人的心
DNF中圣如此加点好不?(辅助)
地理里的水土流失,固沟护坡保塬,是什么意思
QQ飞车怎样才能快?
美亚电影台现在可以收到吗?
你就会这几个动作。句中会字应做何解释???
宁津美华工业有限公司地址在什么地方,想过去
卡卡与C.罗是敌是友?
首先问一下 不是一个血型的两个人可以互相植
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?