输入一个整数,将整数循环右移。

从控制台输入一个整数S,通过控制台输入的数n将S循环右移n位。比如输入S=548628,n=3;则输出628548,若n=5则输出486285。

--来自网页客户端
已邀请:

admin

赞同来自:

练习题不错

--来自移动客户端

lys10038

赞同来自:

过程有点麻烦

--来自移动客户端

libertyzheng

赞同来自:

0628.jpg

 

--来自网页客户端

fengyun12

赞同来自: 磨砂

/**
* 每日一练160627 输入一个整数S,再输入一个整数n
* 键S循环右移n位
*/
public void ex160627(){
Scanner sc=new Scanner(System.in); //标准控制台输入
Integer s = null;
int n=0;
char[] myInt;
char[] myInt2;
try{
System.out.println("请输入一串整数:");
if(sc.hasNext()){
s=sc.nextInt();
}
System.out.println("请输入移动的位数");
if(sc.hasNext()){
n=sc.nextInt();
}
myInt=s.toString().toCharArray();
int length=myInt.length;
myInt2=new char[length];
for(int i=0;i<length;i++){
int wz=i+n-(i+n)/length*length;
myInt2[wz]=myInt[i];
}
for(int i=0;i<length;i++){
System.out.print(myInt2[i]);
}
}catch(Exception ex){
ex.printStackTrace();
}
}

--来自移动客户端

我也是基佬 - hello world

赞同来自:

感觉很难啊

--来自移动客户端
image.png

image.png


--来自移动客户端

lursxu

赞同来自:

转成字符数组操作

--来自移动客户端

五月言xi

赞同来自: Johnny4157

怎么搞哟,新手~…~

--来自移动客户端

厌倦期待CB

赞同来自:

image.png


--来自移动客户端

admin

赞同来自:

方法很多,欢迎大家都用自己的方法试试!!

--来自网页客户端

Hi23EC777D715E -

赞同来自:



--来自移动客户端

血剑情书 - 为善去恶是格物

赞同来自:

慢慢学习,脚踏实地,终有收获

--来自移动客户端

狂枫抱雨A9

赞同来自: 陈不了

转字符串,charat截取再拼接

--来自移动客户端

CallMeE - 除了污没别的

赞同来自:

/*
输入一个整数,将整数循环右移。
从控制台输入一个整数S,通过控制台输入的数n将S循环右移n位。
比如输入S=548628,n=3;则输出628548,若n=5则输出486285。
*/

我用的是字符数组,貌似偏离了面向对象= 。=

import java.util.*;

public class J20160113 {

    public static void main(String args[]) {
        System.out.println("please scan a String which you want to deal");
        Scanner scr = new Scanner(System.in);
        String FirScn = scr.nextLine();
        int FirScnLen = FirScn.length(), i, j;
        char[] DealStr = new char[FirScnLen];
        char[] DealStr2 = new char[FirScnLen + 1];
        char Stemp = ' ';
        System.out.println("please scan a deal number of the string");
        Scanner scr1 = new Scanner(System.in);
        int Scn = scr1.nextInt();
        DealStr = FirScn.toCharArray();
        for (j = 0; j < Scn; j++) {
            for (i = 0; i < FirScnLen; i++) {
                DealStr2[i + 1] = DealStr[i];
            }
            DealStr2[0] = DealStr2[i];
            for (i = 0; i < FirScnLen; i++) {
                DealStr[i] = DealStr2[i];
            }
        }
        System.out.println("String after deal is " + DealStr2);

    }
}

--来自网页客户端
var=(s%(10∧n))*(10∧n)+s/(10∧n);
system.out.println("s移动"+n+"位后的数为"+var);//对吗这样

--来自移动客户端

啊郎0F4B4338

赞同来自:

学习中

--来自移动客户端

空瓶子B443C

赞同来自:

image.png

image.png


你好
你好

--来自移动客户端

空瓶子B443C

赞同来自:

image.png

image.png

你好


--来自移动客户端

丶小五

赞同来自:

IMGTMP_20170708_161535.jpg


--来自移动客户端

yexu_i

赞同来自:

>>>

--来自移动客户端

qkekeq

赞同来自:

IMGTMP_20170715_154630.jpg


IMGTMP_20170715_154724.jpg


--来自移动客户端

要回复问题请先登录注册

Template error, template file not found