Java基础50道经典练习题(36)——移动位置
【程序 36 移动位置】
题目:有 n 个整数,使其前面各数顺序向后移 m 个位置,最后 m 个数变成最前面的 m 个数,比如输入数字
为 1 2 3 4 5 6 7 8 9 0,m=4,则结果为 7 8 9 0 1 2 3 4 5 6
源码:
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 | package com.homework.test; import java.util.Scanner; /* 【程序 36 移动位置】 题目:有 n 个整数,使其前面各数顺序向后移 m 个位置,最后 m 个数变成最前面的 m 个数,比如输入数字 为 1 2 3 4 5 6 7 8 9 0,m=4,则结果为 7 8 9 0 1 2 3 4 5 6 */ public class Test36 { public static void main(String [] args){ final int N = 10 ; System.out.print( "请输入10个数的数组:" ); Scanner scan = new Scanner(System.in); int [] a = new int [N]; for ( int i= 0 ;i<a.length;i++) a[i] = scan.nextInt(); System.out.print( "请输入一个小于10的数:" ); int m = scan.nextInt(); scan.close(); int [] b = new int [m]; int [] c = new int [N-m]; for ( int i= 0 ;i<m;i++) b[i] = a[i]; for ( int i=m,j= 0 ;i<N;i++,j++) c[j] = a[i]; for ( int i= 0 ;i<N-m;i++) a[i] = c[i]; for ( int i=N-m,j= 0 ;i<N;i++,j++) a[i] = b[j]; for ( int i= 0 ;i<a.length;i++) System.out.print(a[i]+ " " ); } } |
今日事,今日毕。
分类:
Java50道练习题
posted on 2020-06-06 12:27 lifelicanpeng 阅读(441) 评论(0) 编辑 收藏 举报
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何在 .NET 中 使用 ANTLR4
· 后端思维之高并发处理方案
· 理解Rust引用及其生命周期标识(下)
· 从二进制到误差:逐行拆解C语言浮点运算中的4008175468544之谜
· .NET制作智能桌面机器人:结合BotSharp智能体框架开发语音交互
· 后端思维之高并发处理方案
· 千万级大表的优化技巧
· 想让你多爱自己一些的开源计时器
· 10年+ .NET Coder 心语 ── 继承的思维:从思维模式到架构设计的深度解析
· 上周热点回顾(3.24-3.30)