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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© pino 中级黑马   /  2015-4-15 21:51  /  1224 人查看  /  6 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

今天,做了一道编程题,要求打印对1到100之间不能被7整除又不含有7的数.
想了半天没有思路,后来听同学一说,才发现自走走入了思维陷阱
  1. #include <stdio.h>
  2. // 对7取余=0为7的整除,除以10为十位数为7的数,对10取余为个位数为7的数.
  3. int main(int argc, const char * argv[]) {
  4.     for (int i=1; i<=100; i++) {
  5.         
  6.         if (i%7==0||i/10==7||i%10==7) {
  7.             
  8.             continue;
  9.         }
  10.         printf("%d\t",i);
  11.     }
  12.    
  13.     return 0;
  14. }
复制代码


其实就是除以10来确定十位数为7的数,对10取余来确定个位数为7的数.

评分

参与人数 4黑马币 +38 收起 理由
synhm + 12
玉林流年 + 20 赞一个!
夜空守望者 + 3 很给力!
流转少年 + 3 神马都是浮云

查看全部评分

6 个回复

倒序浏览
好的谢谢了   谢谢了
回复 使用道具 举报
顶一个!!
回复 使用道具 举报
徐徐,加油!
回复 使用道具 举报
  1. /*
  2. 打印1 - 100中不能被7整除又不包含7的数,并统计个数
  3. */
  4. #include<stdio.h>

  5. int main()
  6. {
  7.     int b=0;
  8.     for(int a=1;a<=100;a++){
  9.         if(a%7!=0&&a!=7&&a!=17&&a!=27&&a!=37&&a!=47&&a!=57&&a!=67&&a!=77&&a!=87&&a!=97){
  10.             b++;
  11.             printf("第%d个不能被7整除又不包含7的数是%d\n",b,a);
  12.         }
  13.         
  14.     }
  15.    
  16.     return 0;
  17. }
复制代码



不要想太复杂了
回复 使用道具 举报
恩,刚一听,我也蒙了,看最后一句话,懂了。
回复 使用道具 举报
不错,很给力,也很简洁!
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马