java中倒序输出:给定一个5位整数,编码输出它的倒序数。(如给定数字12345,则程序运行后求得54321)?

如题所述

给你个更简单的方法,使用StringBuffer类中的reverse方法。
除此之外也可以使用String活着char[]实现咯。就是麻烦点。
然后你那个程序思路也可以,不过还须提供位数,将位数相乘啊,你这样直接加“int sum =gw+sw+bw+qw+ww;”怎么行呢?五位数对吧,那你最后还得做个反向循环相乘,再相加。得出的结果才正确啊。
温馨提示:内容为网友见解,仅供参考
第1个回答  2011-05-27
public static void main(String[] args) {
String ss = "12345 ";
StringBuffer sb = new StringBuffer(ss);
System.out.println(sb.reverse());
}

主要是利用StringBuffer的reverse方法,工作地方没java环境,无法测试,你运行看看。
第2个回答  2011-05-27
代码我是不想给你写了,提供一个思路吧。将获取到的这个数字转换成String类型。通过String的split方法截取成数组。然后将数组倒序输出就是了。追问

import java.util.*;
public class Work06{
public static void main(String[] args){
System.out.println("请输入一个5为数");
Scanner input =new Scanner(System.in);
int no =input.nextInt();
int gw =no/10000;
int sw =no/1000%10;
int bw =no/100%10;
int qw =no/10%10;
int ww =no/10;
int sum =gw+sw+bw+qw+ww;
System.out.println("输出的倒序数为:"+sum);
类似这种的思路有吗?

java中倒序输出:给定一个5位整数,编码输出它的倒序数。(如给定数字12345...
除此之外也可以使用String活着char[]实现咯。就是麻烦点。然后你那个程序思路也可以,不过还须提供位数,将位数相乘啊,你这样直接加“int sum =gw+sw+bw+qw+ww;”怎么行呢?五位数对吧,那你最后还得做个反向循环相乘,再相加。得出的结果才正确啊。

用Java编写一个程序,输入一个五位数,将它逆序输出.提示:使用整除除法...
public class Egg { public static void main(String[] args) { System.out.println(reverse(123)); } public static int reverse(int value) { if (value == 0) { return 0; } int len = 0; int c = value % 10; int other = c; if (value >...

...输入一个正整数,将其逆序输出。例如,输入12345,输出54321. 跪求大 ...
分析:首先,输入的是一个整数,因此最前面一位数不是零,所以我们可以用除10取余法写。a = num % 10 就是输出数字的最后一位 然后除10剔除数字最后一位,这样数字倒数第二位就会输出。以此类推,就能逆序输出数字。

编写一个程序,从键盘依次读入5个实数,如果整个输入序列不递减,则输出...
看你的代码应该是c的,不管是什么语言,比较运算不能写成a>b>c这样,必须一个一个分开写的,if(a>b && b>c ...)这样写,顺便你的逻辑,也要把等于的情况考虑进去,所以if(a>=b && b>=c ...)

编写一个c程序,从键盘输入任意一个五位数,把这个数值分解为单个数字,然 ...
int main(void){ int a,b,c,d,e;long s;printf("请输入一个5位数\\n");scanf("%ld",&s);a = s * 0.0001;b = (s * 0.001) - a * 10;c = (s * 0.01) - (a * 100 + b * 10);d = (s * 0.1) - (a * 1000 + b * 100 + c * 10);e = s - (a *...

c语言,任意输入一个五位正整数,逆序输出每一位上的数
include <stdio.h>void main(){int i,n,a[5];scanf("%d",&n);for(i=0;i<5;i++){a[i]=n%10;n=n\/10;}for(i=0;i<5;i++)if(a[i]){for(;i<5;i++)printf("%1d",a[i]);break;}}运行示例:

c语言 输入一个整数,要求倒序输出 while语句
可以参考下面的代码:include <stdio.h> int main(){ int i;scanf("%d",&i);while(i){ printf("%d ",i%10);i\/=10;} return 0;} \/ 输出:12345 5 4 3 2 1 \/

java编写一个程序,用户输入一个正整数,把它的各位数字颠倒一下,并输...
import java.util.Scanner;public class ReverseNumber { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); System.out.println("请输入一个整数:"); int num = scanner.nextInt(); StringBuilder stringBuilder = new StringBuilder(); Strin...

java编程 输入一个整数,从高位开始逐位输出它的各位数字。
public class Test40032 { public static void main(String[] args) { int ri, repeat;int digit;long n, temp, pow;Scanner in = new Scanner(System.in);repeat = in.nextInt();for (ri = 1; ri <= repeat; ri++) { n = in.nextLong();\/*---*\/ if(n<0){ n = -n;} ...

C++编写一个程序,从键盘上输入5个整数,输出最大值
main(){ int a[5]; for(int i=0;i<5;i++) { printf("请输入第%d个整数:",i+1); scanf("%d",&a[i]); } int max=a[0],min=a[0]; for(i=0;i<5;i++) { if(maxa[i]) min = a[i]; } printf("这组数中最大值为:%d, 最小值为:%d\\n",max,min);...

相似回答