老师的作业题,表达式是正确的,不知道怎么输入赋值,请高手指点下迷津!谢谢

解决方案 »

  1.   

    自己在控制台输入值去读取,或者用arg[]传值都行啊
      

  2.   

    public static void main(String[] args) {
    // TODO Auto-generated method stub
    Scanner in =new Scanner(System.in);
    System.out.println("input a number");
    int num=in.nextInt();
    int[] sushut=sushuTable(num);
    System.out.println(Arrays.toString(sushut));
    }

    static int[] sushuTable(int num){
    int[] sushu=new int[num/2];
    int m=1;
    for(int i=2;i<num;i++){
    for(int j=3;j<num;j+=2){
    if(i<j||(i%j==0&&i!=j))
    break;
    else if(i==j)
    sushu[m++]=i;
    }
    }
    sushu[0]=2;
    return sushu;
    }
    初学java,请高手指点。这个数组可以得到素数表,但数组最后几个元素被初始化为0,应该怎么解决?
      

  3.   

    当年我们求索数的时候好象都是要求求出从多少到多少的索数吧...
    在学习I\O以前,我们可以用内部已经定义好的int值来保证嘛,毕竟学习是要慢慢来的
    当然I\O是必须学习的,早点学也是好事情
    Scanner in =new Scanner(System.in); 
    正如LS所讲的用法,应该能够满足你的要求了
      

  4.   

    Scanner 好像需要jdk 1.5以上,我用的jdk 1.6我的程序有点问题
    code=Java][/
    int[] sushu=new int[num/2];[code]会多初始化一些元素,最后几个数组元素为0.请高手指点。
    难到要用链表吗? 
      

  5.   

    import java.io.BufferedReader;
    import java.io.IOException;
    import java.io.InputStreamReader;
    import java.util.ArrayList;
    import java.util.List;public class Sushu { public static void main(String[] args) {
    int i = 2,j,l=0,ii=0;
    System.out.print("请输入一个整数:");
    try{
    BufferedReader buf=new BufferedReader(new InputStreamReader(System.in));//通过输入设备输入,即键盘
    ii=Integer.parseInt(buf.readLine());//把输入的整数转换成整数
    }catch(NumberFormatException nfe){
    System.out.println("你输入了不正确的数字");
    }catch(IOException ioe){
    System.out.println("输入输出异常,请重新启动程序");
    }catch(Exception e){
    System.out.println("不明异常,请重新启动程序");
    }
    outter: //定义一个标签
    for (; i <=ii ; i++) {
    j = (int) Math.sqrt(i);
    for (int k = 2; k <=j; k++) {
    if (i % k == 0) {
    continue outter;
    }
    }
    l++;
    System.out.println(i);
    }
    System.out.println("共有"+l+"个素数");
    }}