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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© haio 中级黑马   /  2014-3-3 09:11  /  1522 人查看  /  8 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 haio 于 2014-3-3 12:38 编辑

打印1~100之内的数遇到包含7的数要跳过7、17、71……
着1~100没问题关键是包含7的数要怎么表达?求高手指教,谢谢!!

评分

参与人数 1技术分 +1 收起 理由
朱神必 + 1

查看全部评分

8 个回复

倒序浏览
我觉得可以把他们变成字符串,进行判断。。。。
回复 使用道具 举报
int i;
i%10 != 7 && i/10 != 7

评分

参与人数 1技术分 +1 收起 理由
朱神必 + 1

查看全部评分

回复 使用道具 举报 1 0
本帖最后由 centian2005 于 2014-3-3 12:07 编辑

1-100,除掉7,17,71
  1. public class Demo {

  2.         public static void main(String[] args) {
  3.                 for(int i=1;i<=100;i++){
  4.                         if(i==7||i==17||i==71){
  5.                                 continue;// 跳出不符合要求的循环,不打印数据
  6.                         }
  7.                         System.out.println("i的值:"+i);
  8.                 }
  9.                
  10.         }
  11. }
复制代码


评分

参与人数 1技术分 +1 收起 理由
朱神必 + 1

查看全部评分

回复 使用道具 举报
本帖最后由 centian2005 于 2014-3-3 12:04 编辑

你描述的题目也有歧义。如果是打印1-100内,包含7的数字,但是同时排除掉,7,17,71那么如下
  1. import java.util.ArrayList;
  2. import java.util.Iterator;
  3. import java.util.List;

  4. public class Demo {

  5.         public static void main(String[] args) {
  6.                 ArrayList<Integer> list = new ArrayList<Integer>();
  7.                 for (int i = 1; i <= 100; i++) {
  8.                         // i%10,取余数,会筛选出如17,27,37诸如此类的数据
  9.                         // i/10,i做除法,会筛选出诸如70,71,72诸如此类的数据
  10.                         if ((i % 10 == 7) || (i / 10 == 7)) {
  11.                                 list.add(i);// 得到全部符合要求的数据,并放入list集合中
  12.                         }
  13.                         // 将所有数据放入list后,删除7,17,71这几个不符合要求的数据,懒人的做法-0-
  14.                         list.remove((Integer) 7);
  15.                         list.remove((Integer) 17);
  16.                         list.remove((Integer) 71);

  17.                 }
  18.                 // 使用Iterator接口,进行标准化输出
  19.                 Iterator<Integer> i1 = list.iterator();
  20.                 while (i1.hasNext()) {//打印删除7,17,71后的所有符合要求的数据
  21.                         System.out.print(i1.next()+",");

  22.                 }
  23.         }
  24. }
复制代码

回复 使用道具 举报
真心感谢各位!!
回复 使用道具 举报
本帖最后由 无此姓名 于 2014-3-7 01:08 编辑
  1. <blockquote>class qu7
复制代码
回复 使用道具 举报
本帖最后由 无此姓名 于 2014-3-7 01:08 编辑

class qu7
{
        public static void main(String[] args)
        {
                for (int x=1;x<101 ;x++ )
                {
                        if ((x%10!=7)&&(x/10!=7))//判断条件有必要解释一下,
                        //只有在余数不是7而且十位不是7的情况下才打印
                                System.out.print(x+" ");
                }
        }
}
为什么我的代码放不上去呢。只能这种形式了
回复 使用道具 举报
haio 中级黑马 2014-3-9 09:48:02
9#
无此姓名 发表于 2014-3-7 01:06
class qu7
{
        public static void main(String[] args)

非常感谢!!
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马