A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 253663946 中级黑马   /  2016-4-4 12:00  /  677 人查看  /  7 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

相对高效的代码是什么啊?

7 个回复

倒序浏览
  1. class Work71 {
  2.         public static void main(String[] args) {
  3.                 int x = 0;                    
  4.                 int y = 0;
  5.                 int a = 0;            
  6.                 for ( x = 2;x <=100 ;x++ ) {          //1 - 100的数
  7.                                 int c = 0;                    //计数 初始化
  8.                         for (y = 1;y <=x ;y++ ) {         //
  9.                          if (x % y==0) {               
  10.                                          c++;                  //记录能被 x整除的个数
  11.                          }
  12.                                  if (c==2&&y==x) {        //   输出素数   
  13.                                          System.out.print(x+"\t");
  14.                                          a++;           //记录素数的个数
  15.                                  }
  16.                                  if (a % 5==0&&y==x) {    //每满5个素数就在第五个素数后面转行
  17.                                                  System.out.println();
  18.                                  }
  19.                         }
  20.                 }
  21.                  System.out.println(a);
  22.         }
  23. }
复制代码
回复 使用道具 举报
原来是这样做的呀
回复 使用道具 举报
还有其他的编程方式!
回复 使用道具 举报
int count = 0;
                 for(int i=2;i<100;i++) {   
                         int j = 2;
                         while(true) {
                                if(i==j) { //等于本身
                                        System.out.print(i + "\t");
                                        count++;
                                        if(count%5==0) {
                                                System.out.println();
                                        }
                                        break;
                                }else if(i%j==0) {   //能被小于自己的数整除,j从2开始递增
                                        break;
                                }
                                j++; //依次递增被除数
                        }
                 }
回复 使用道具 举报
Lihongjie 发表于 2016-4-4 13:46
int count = 0;
                 for(int i=2;i

哥们,这个代码好熟悉啊!这个不是高效的吧?
回复 使用道具 举报
【长沙】梁黑马 发表于 2016-4-4 13:41
还有其他的编程方式!

有,有蛮多的,就是不懂哪个是高效的!
回复 使用道具 举报
skykiah 发表于 2016-4-4 13:22
原来是这样做的呀

我有一个方法,他们说效率不高!
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马