关于作业的问题~
package com.javawork; import java.util.Scanner; public class Management { Scanner sc = new Scanner(System.in); // 显示提示信息的方法 public void notice() { System.out.println("*********************************"); System.out.println(" 1--插入数据"); System.out.println(" 2--显示所有数据"); System.out.println(" 3--在指定位置插入数据"); System.out.println(" 4--查询能被3整除的数据"); System.out.println(" 0--退出"); System.out.println("*********************************"); } // 显示数据方法 public void showData(int[] a, int legth) { System.out.println("数组元素为:"); for (int i : a) { System.out.print(i + " "); } System.out.println(); } // 插入数据的方法 public int[] insertData() { int[] a = new int[10]; for (int i = 0; i < a.length - 1; i++) { System.out.println("请插入第" + (i + 1) + "个数据:"); a[i] = sc.nextInt(); } showData(a, a.length); return a; } // 在指定位置插入数据的方法 public void insertAtArray(int[] a, int n, int k) { System.out.println("请输入要插入的元素:"); n = sc.nextInt(); System.out.println("请输入要插入的位置:"); k = sc.nextInt(); // for循环将要插入位置的元素依次往后移 for (int i = a.length - 1; i >= k; i--) { a[i] = a[i - 1]; } a[k] = n; showData(a, a.length); } // 查询能被3整除的数的方法 public void divThree(int[] a) { // 定义一个boolea类型flag,默认为false,当有能被3整除的数时,flag=true boolean flag = false; for (int i : a) { if (i % 3 == 0) { System.out.print(i + " "); flag = true; } } if (flag == false) { System.out.println("没有能被3整除的数!"); } System.out.println(); } public static void main(String[] args) { // TODO Auto-generated method stub Scanner s = new Scanner(System.in); Management m = new Management(); int[] data = null;// 定义一个数组存放插入的数据 int n = 0, k = 0;// 定义n k变量 n表示插入的数,K镖师插入的位置 int i = 5;// 定义变量i while循环结束的信号 while (i != 0) { m.notice(); System.out.println("请输入对应的数字进行操作:"); i = s.nextInt(); switch (i) { case 1: data = m.insertData(); break; case 2: m.showData(data, data.length); break; case 3: m.insertAtArray(data, n, k); break; case 4: m.divThree(data); break; case 0: System.out.println("退出系统!"); break; default: System.out.println("输入有误!请重新输入!"); break; } } } }
代码中的方法里边的备注都是看了提问之后才解决的,想问下老师以后遇到这种有个别要求但是一点思路都没有咋办,还有帮我看看这代码还有哪里需要改进的吗
47
收起
正在回答
1回答
1、关于思路,多看多想多练,尤其在基础入门阶段,这是唯一的解决办法。
这也是为什么我们会在基础专题中设置大量的习题,就是为了帮助大家梳理每个人思考的方式,无论是编程题,上传作业还是选择题,都可以丰富视角,从不同的角度拓展思路。
2、几点建议补充,题目要求中有说明:
1、插入的数据不允许为零
2、判断是否能被3整除的位置,建议添加 i!=0 的判断,以去掉数组最后一个占位的元素。
Java零基础入门18
- 参与学习 人
- 提交作业 7317 份
- 解答问题 14452 个
想要入门学编程?多年一直活跃在编程语言排行版前列的Java是一个很好的选择。本路径将从Java基础语法、面向对象、常用工具类三部分,为你开启软件开发的大门!
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星