不做作业不能看后边的课程?

不做作业不能看后边的课程?

老师好,我不会做这个作业啊,不是找茬,其他编程练习都做啦,这个真的太复杂不会做,可是我想看后面的课程啊,另外老师给你看看,我写的代码,哪里对?还有第一行的插入数据就不知道怎样用老师说的那行代码做,毫无经验,另,老师我还有个已提问的问题,还未给明确回答噢

import java.util.Scanner;



public class Test {


/**

* @param args

* ***********************************

* 1--插入数据

* 2--显示所有数据

* 3--在指定位置处插入数据

* 4--查询能被3整除的数据

* 5--退出

* ***********************************

*/

public static void main(String[] args) {

// TODO 自动生成的方法存根

//插入数据:public int[] insertDate(){}

//显示所有数据:public void showDate(int[] a,int length){}

//在指定位置处插入数据:public void insertAtArray(int[] a,int n,int k){}

//查询能被3整除的数据:public void divThree(int[] a){}

Scanner sc=new Scanner(System.in);

int v=sc.nextInt();

swich (v){

case 1:

public int[] insertDate(){

};

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

System.out.println("1--插入数据");

System.out.println("2--显示所有数据");

System.out.println("3--在指定位置处插入数据");

System.out.println("4--查询能被3整除的数据");

System.out.println("5--退出");

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

case 2:

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

System.out.println("1--插入数据");

System.out.println("2--显示所有数据");

System.out.println("3--在指定位置处插入数据");

System.out.println("4--查询能被3整除的数据");

System.out.println("5--退出");

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

case 3:

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

System.out.println("1--插入数据");

System.out.println("2--显示所有数据");

System.out.println("3--在指定位置处插入数据");

System.out.println("4--查询能被3整除的数据");

System.out.println("5--退出");

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

case 4:

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

System.out.println("1--插入数据");

System.out.println("2--显示所有数据");

System.out.println("3--在指定位置处插入数据");

System.out.println("4--查询能被3整除的数据");

System.out.println("5--退出");

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

case 5:

;

break;

default:

System.out.println("您输入的信息有误,请重新输入:");

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

System.out.println("1--插入数据");

System.out.println("2--显示所有数据");

System.out.println("3--在指定位置处插入数据");

System.out.println("4--查询能被3整除的数据");

System.out.println("5--退出");

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

}

}


}


正在回答

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

3回答

针对你的代码,switch关键字写错了。另外,case 1后面你写了下面的内容:

public int[] insertDate(){

};

这块应该写方法的调用。也就是先根据视频中的提示,先在主方法外面完成方法的定义,然后再完成方法的调用。你可以参考一下季节v这个同学提供的代码,他的整体思路是对的,但是有些小问题,我在他的问答下,会给出他的问题,你可以参考着做一下。(只看那几个方法定义即可,其他我写好的你就不用参考他的了)

我在你的代码的基础是,给你一个程序的框架,代码如下:

import java.util.Scanner;
public class Test {
//插入数据
public int[] insertData(){
}
// 显示所有数据
public void showData(int[] a,int length){
}
//在指定位置处插入数据
public void insertAtArray(int[] a,int n,int k){
}
//查询能被3整除的数据
public void divThree(int[] a){
}
/**
* @param args
*            *********************************** 1--插入数据 2--显示所有数据
*            3--在指定位置处插入数据 4--查询能被3整除的数据 5--退出 * *
* *********************************
*/
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("5--退出");
System.out.println("***********************************");
}
public static void main(String[] args) {
Test test = new Test();
while (true) {
test.notice();
Scanner sc = new Scanner(System.in);
int v = sc.nextInt();
switch (v) {
case 1:
// 调用insertData方法
break; // 每个case语句后面要跟一个break语句,不然会接着执行下面的case语句
case 2:
// 调用showData方法
break;
case 3:
// 调用insertAtArray方法
break;
case 4:
//调用divThree方法
break;
case 5:
System.exit(0);
break;
default:
System.out.println("您输入的信息有误,请重新输入:");
}
}
}
}

另外,关于你说的不做作业不让看后面的视频的问题,其实只要提交了作业,无论对错,都可以继续看后面的视频。不过从你这个作业的完成情况看,感觉方法这部分还是要再练习一下,不然后面面向对象或比较麻烦。另一个问题也已经回复了,可能因为有其他同学回复,老师没有关注到,后面我们会注意的。

如果有问题,欢迎继续在问答区提问,祝学习愉快!

季节v 2017-04-19 08:49:27

提问的链接发上来会比较好吧

不然还要老师后台上查找,不太便捷

  • 提问者 慕粉4388281 #1
    感谢同学的帮助!
    2017-04-19 10:07:44
季节v 2017-04-19 08:47:10

我不是老师,这是我写的。老师还没批改

package program;


import java.util.Scanner;


public class program {

//方法一:显示程序初始页面及提供数值输入

public int 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("请输入对应的数字进行操作");

  

   Scanner sc=new Scanner(System.in);

   int z=sc.nextInt();

   return z;//返回键盘输入的值给主方法

}

//方法二:插入数据的方法

    public  int[] insertData(){ 

    int n=0;

    int[] a1=new int[10];

     

    for(;n<9;n++){

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

    Scanner sc=new Scanner(System.in);

    a1[n]=sc.nextInt(); 

    }

    return a1;  //返回键盘输入的值(数组)给主方法

    }

    

    //方法三:显示所有数据的方法

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

   

    System.out.println("数组元素为:");

    for(length=0;length<9;length++){ //用for循环,把数组打印出来

    System.out.print(a[length]+"  ");

    }

    System.out.println();

    }

    

    //方法四:在指定位置插入数据

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

   

    System.out.println("输入需插入数组的位置");

    Scanner sc=new Scanner(System.in);

    k=sc.nextInt(); //k指需要在第几个数组中插入数据

    System.out.println("输入新数组");

    Scanner sc2=new Scanner(System.in);

  

    for(n=0;(9-n)>=k;n++){

    a[(9-n)]=a[(9-n)-1]; //重新定义k以后的数组值

    }a[k-1]=sc.nextInt(); //赋予k位置的数组值

   

    System.out.println("数组元素为:");

    for(n=0;n<10;n++){

    System.out.print(a[n]+"  ");

    }

    System.out.println();

    }

    

    //方法五:查询能被3整除的数据的方法

    public void divThree(int[] a){

    for(int c=0;c<(a.length);c++){

    if(a[c]%3==0){

    System.out.print(a[c]+" ");

    }

    }

    System.out.println();

    }

    

    

    //主方法

public static void main(String[] args) {

program method=new program();

int[] a0=new int[10];

int t=method.notice();

    

switch(t){

    case 1:

    a0=method.insertData();


System.out.println("数组元素为:");

for(int m=0;m<9;m++){

System.out.print(a0[m]+"  ");

}

System.out.println();

break; //值非1的时候,终止循环。

    }

    t=method.notice(); //调用方法一,再次展示开始页面,提供选项选择。

    

    switch(t){

    case 2:

    method.showData(a0,0);

   

    break;

    }

    

    

    t=method.notice(); //调用方法一,再次展示开始页面,提供选项选择。

    switch(t){

    case 3:

    method.insertAtArry(a0,0,0);

   

    

    t=method.notice(); //调用方法一,再次展示开始页面,提供选项选择。

    switch(t){

    case 4:

    method.divThree(a0);

   

    t=method.notice(); //调用方法一,再次展示开始页面,提供选项选择。

    switch(t){

    case 0:

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

    System.exit(t);

    }

    }

}

}

}


  • 方法定义中的问题: 1、insertData方法没有判断输入的数据不能为0 2、显示所有数据的方法,for循环应该这样写 for(int i=0;i<length;i++){ //输出数组元素 } 然后在case 2后面调用方法时,根据最后一个数组元素是否为0,来判断参数length的值是9还是10,如果最后一个元素为0,说明是调用完insertData方法,只输出9个数据,length的值为9。否则是调用完insertAtArray方法,数组的10个元素都要输出,length为10。 3、能被3整除的方法,如果没有能被3整除的数据,应该给出提示信息。这里可以在循环外定义一个boolean类型变量值为false,如果有能被3整除的数据,则布尔类型的值为true,否则就会一直为false。然后根据布尔值进行输出。 只是针对这几个方法的意见,其他问题还请季节v同学看作业批复。仅供慕粉同学参考
    2017-04-19 09:59:57
  • 提问者 慕粉4388281 #2
    感谢同学的帮助!
    2017-04-19 10:07:12
  • 谢谢指点~
    2017-04-19 13:58:30
问题已解决,确定采纳
还有疑问,暂不采纳

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

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

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

在线咨询

领取优惠

免费试听

领取大纲

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