用JAVA求素数的问题 老师的作业题,表达式是正确的,不知道怎么输入赋值,请高手指点下迷津!谢谢 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 自己在控制台输入值去读取,或者用arg[]传值都行啊 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,应该怎么解决? 当年我们求索数的时候好象都是要求求出从多少到多少的索数吧...在学习I\O以前,我们可以用内部已经定义好的int值来保证嘛,毕竟学习是要慢慢来的当然I\O是必须学习的,早点学也是好事情Scanner in =new Scanner(System.in); 正如LS所讲的用法,应该能够满足你的要求了 Scanner 好像需要jdk 1.5以上,我用的jdk 1.6我的程序有点问题code=Java][/int[] sushu=new int[num/2];[code]会多初始化一些元素,最后几个数组元素为0.请高手指点。难到要用链表吗? 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+"个素数"); }} 急救!关于鼠标事件的问题, 在线等。 请教一个正则式的写法,查询及替换 帮我看看这个基本的线程题目 jbuilder编辑代码时,老是点不中地方? 怎么解决? 给大家分享点资料以及学习java的思路 关于jmf的窗口关闭的问题,急急急 NMI's Java Code Viewer 6.0反编译过来的程序为何编译不了 一个java初级问题,关于编译的时候“java.awt.event”错误 ~*~ 开发平台有讲究吗! 单例设计模式 哪位大虾用过JavaMail,来帮小弟找找错了 如何取道array里的value
// 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,应该怎么解决?
在学习I\O以前,我们可以用内部已经定义好的int值来保证嘛,毕竟学习是要慢慢来的
当然I\O是必须学习的,早点学也是好事情
Scanner in =new Scanner(System.in);
正如LS所讲的用法,应该能够满足你的要求了
code=Java][/
int[] sushu=new int[num/2];[code]会多初始化一些元素,最后几个数组元素为0.请高手指点。
难到要用链表吗?
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+"个素数");
}}