老师不好意思!刚才上传代码,忘选择语言了!老师请看这个吧~
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 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 | import java.util.Scanner; public class DataTest { int [] arr = new int [ 10 ]; //定义一个长度为10的数组 //显示提示信息的方法 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( "**************************************" ); System.out.println( "请输入对应的数字进行操作:" ); } //插入数据功能 public int [] insertData() { Scanner sc = new Scanner(System.in); for ( int i = 0 ; i < 9 ; i++) { System.out.println( "请输入第" + (i + 1 ) + "个数据" ); arr[i] = sc.nextInt(); if (arr[i] == 0 ) { System.out.println( "输入的值不能为0!" ); i--; } } System.out.println( "数组元素为:" ); for ( int a : arr) { //使用foreach循环遍历数组 if (a == 0 ) break ; System.out.print(a + " " ); } System.out.println(); return arr; } //显示数据功能 public void showData( int [] arr, int length) { System.out.println( "数组元素为:" ); if (arr[length - 1 ] == 0 ) { //判断数组是原始数组还是插入后的数组 for ( int i = 0 ; i < length - 1 ; i++) System.out.print(arr[i] + " " ); } else { for ( int i = 0 ; i < arr.length; i++) System.out.print(arr[i] + " " ); } System.out.println(); } //在指定位置插入数据功能 public void insertAtArray( int [] arr, int n, int k) { for ( int i = arr.length - 1 ; i >= k; i--) { //用for循环把前一个数赋值给后一个数,留出位置 arr[i] = arr[i - 1 ]; } arr[k- 1 ] = n; for ( int a : arr) { System.out.print(a + " " ); } System.out.println(); } //查询能被3整除的功能 public void divThree( int [] arr) { for ( int i = 0 ; i < arr.length; i++) { if (arr[i] % 3 == 0 ) { System.out.print(arr[i] + " " ); } } System.out.println(); } //逻辑区 public static void main(String[] args) { DataTest dt = new DataTest(); //创建对象并实例化 dt.notice(); //调出用户界面 int n; do { //用do...while循环,选择功能 Scanner sc = new Scanner(System.in); n = sc.nextInt(); int [] data = dt.arr; //利用(对象.属性)给数组传值(想了好久很关键!) switch (n) { case 1 : dt.insertData(); //调用插入功能 dt.notice(); //再次调出用户界面 break ; case 2 : dt.showData(data, 10 ); //给显示数据功能的方法传值 dt.notice(); //再次调出用户界面 break ; case 3 : System.out.println( "请输入要插入的数据:" ); int n1 = sc.nextInt(); System.out.println( "请输入要插入数据的位置" ); int k = sc.nextInt(); dt.insertAtArray(data, n1, k); dt.notice(); break ; case 4 : dt.divThree(data); dt.notice(); break ; case 0 : continue ; default : System.out.println( "输入数字无效!请您输入0-4之间的数字!" ); dt.notice(); } } while (n!= 0 ); System.out.println( "程序终止啦~" ); } } |
1
收起
正在回答 回答被采纳积分+1
2回答
Java零基础入门18
- 参与学习 人
- 提交作业 7317 份
- 解答问题 14452 个
想要入门学编程?多年一直活跃在编程语言排行版前列的Java是一个很好的选择。本路径将从Java基础语法、面向对象、常用工具类三部分,为你开启软件开发的大门!
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧