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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 唯爱唐嫣 中级黑马   /  2016-3-30 23:11  /  788 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

有更简洁的方法吗?欢迎指点

public class SuShu {
        /*
         * 题意概要:打印1-100之间的所有素数及个数,每五个数换行
         *
         * 思路: for循环遍历1-100之间的整数 对每个数i去除以2-i/2之间的整数 若都不能整除则i为素数 否则i不是素数 总结:
         * 主要就是循环的嵌套问题
         */
        public static void main(String[] args) {
                // 变量sum保存素数的个数
                int sum = 0;
                int flag;
                // 外层循环,遍历1-100之间的整数
                for (int i = 1; i <= 100; i++) {
                        flag = 1;
                        for (int j = 2; j <= i / 2; j++) { // 内层循环,遍历2-i/2之间的整数
                                if (i % j == 0) { // i对j取模
                                        flag = 0; // 若能被整除则中断循环
                                        break;
                                }
                        }
                        if (flag == 1) {
                                sum++;
                                System.out.print(i + ", ");
                                if (sum % 5 == 0) { // 每五个数换行
                                        System.out.println();
                                }
                        }
                }
        }

}

评分

参与人数 2黑马币 +5 收起 理由
保密工作 + 3 很给力!
张演虎 + 2

查看全部评分

3 个回复

正序浏览
学习了,很好!
回复 使用道具 举报
写的不错啊
回复 使用道具 举报
这个帖子不错啊,必须得顶一个
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马