求大佬帮忙

求大佬帮忙

package com.imooc;


import java.util.Scanner;


public class DataManage {


public void star(){

System.out.println("************************************");

System.out.println("         1--插入数据"+'\n');

System.out.println("         2--显示数据"+'\n');

System.out.println("         3--在指定位置插入数据"+'\n');

System.out.println("         4--查询能被3整除的数"+'\n');

System.out.println("         0--退出程序"+'\n');

System.out.println("************************************");

System.out.print("");

System.out.println("请输入对应的数字进行操作:"+'\n');

}

//插入数据

public int[] insertData(int array[]){

int[] a=new int[10];

        for(int n=0;n<a.length-1;n++){

        System.out.println("请输入第"+(n+1)+"个数据");

        Scanner sc=new Scanner(System.in);

        a[n]=sc.nextInt();

            System.out.print("");

        }

            return a;

}

//显示数据

public void showData(int[] a,int length ){

System.out.println("所有数据为:");

for(int i:a) {

        if(i!=0){

        System.out.print(i+"  ");

        }

}

        System.out.print("");

}

    //插入数据

public void insertatData(int[] a,int n,int k){

for(int s=a.length-1;s>=k;s--){

a[s]=a[s-1];

}

a[k]=n;

}

//数组中能被3整除的数

public void divThree(int[] a){

System.out.println("数组中能被3整出的数有:");

for(int n:a){

if(n%3==0){

System.out.println(n+" ");

}

}

System.out.println();

}

@SuppressWarnings("resource")

public static void main(String[] args) {

DataManage DM=new DataManage();

int[] array=new int[10];

Scanner sc3=new Scanner(System.in);

while(true){

DM.star();

int i=sc3.nextInt();

switch(i){

case 1:DM.insertData(array);

        break;

case 2:DM.showData(array,array.length );

        break;

case 3:

   Scanner sc2=new Scanner(System.in);

   System.out.print("请输入想要插入的数据:");

   int n=sc2.nextInt();

   System.out.print("请输入想要插入数据的位置:");

       int m=sc2.nextInt();

       DM.insertatData(array, n, m);

       DM.showData(array, array.length);

        break;

case 4:DM.divThree(array);

        break;

case 0:System.out.println("退出程序!!");

        return;

default:System.out.println("输入错误,程序结束!!");

}

    

}


}


}


正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

1回答
好帮手慕雪 2018-11-07 09:56:39

你程序中即使已经调insertData了,但showData()还是不显示内容,是因为insertData(int array[])中不用int[] a=new int[10];而是直接使用传递过来的array。包括循环中直接array[n]=sc.nextInt(); 另:以后提问寻求别人帮助时,要描述一下你的问题,否则其它同学不明白这是在问问题还是晒代码还是寻求优化的方法,这需要很强的理解能力,而这时很有可能因为麻烦而使你错过了得到帮助的机会。祝:学习愉快

问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师