查询能被3整除的元素如何嵌套可以正确提示没有能被整除的元素,怎么判断数组为默认值是提示没有能被整除
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 | package com.imooc; import java.util.Scanner; public class Demo { // 显示提示信息的方法 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); int [] a = new int [ 10 ]; for ( int i = 1 ; i < 10 ; i++) { System.out.println( "请输入第" + i + "个数据:" ); a[i - 1 ] = sc.nextInt(); } System.out.println( "数组元素为:" ); for ( int i = 0 ; i < 9 ; i++) { System.out.print(a[i] + " " ); } System.out.println(); return a; } // 显示所有数据 public void showData( int [] a, int length) { System.out.println( "数组元素为:" ); for ( int i = 0 ; i < length; i++) { System.out.print(a[i] + " " ); } System.out.println(); } // 在指定位置插入数据 public void insertAtArray( int [] a, int n, int k) { System.out.println( "请输入要插入的数据:" ); Scanner sc = new Scanner(System.in); n = sc.nextInt(); System.out.println( "请输入要插入数据的位置:" ); k = sc.nextInt(); a[k] = n; System.out.println( "数组元素为:" ); for ( int i = 0 ; i < a.length; i++) { System.out.print(a[i] + " " ); } System.out.println(); } // 查询能被3整除的数据 public void divThree( int [] a) { System.out.print( "数组中能被3整除的元素为:" ); for ( int i = 0 ; i < a.length; i++) { if (a[i] % 3 == 0 ) { System.out.print(a[i] + " " ); } } System.out.println(); } public static void main(String[] args) { Demo d = new Demo(); int [] a = new int [ 10 ]; int length = 9 ; while ( true ) { d.notice(); Scanner sc = new Scanner(System.in); int n = sc.nextInt(); if (n == 0 ) { System.out.println( "退出程序!" ); break ; } switch (n) { case 1 : a = d.insertData(); break ; case 2 : d.showData(a, length); break ; case 3 : int k = 0 ; d.insertAtArray(a, n, k); length = 10 ; break ; case 4 : d.divThree(a); break ; default : System.out.println( "该数字超出了1-4的范围" ); } } } } |
26
收起
正在回答
1回答
当没有被3整除的数据时应该给出错误提示,可以按如下思路完成:
定义一个字符串str用于存放能被3整除的数据,设置boolean变量的值为false。使用for循环遍历数组元素,在循环中使用if语句判断是否能被3整除,并且数组元素不为0,如果满足if语句的条件,则设置boolean变量的值为true,并将能被3整除的数据用字符串拼接起来,如str=str+a[i]+””;
然后在循环外判断如果boolean为true则输出str的值,否则输出:数组中没有数据能被3整除。
如果解决了你的疑惑,请采纳,祝学习愉快~
Java零基础入门18
- 参与学习 人
- 提交作业 7317 份
- 解答问题 14452 个
想要入门学编程?多年一直活跃在编程语言排行版前列的Java是一个很好的选择。本路径将从Java基础语法、面向对象、常用工具类三部分,为你开启软件开发的大门!
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧