黑马程序员技术交流社区

标题: 对整除与取余的简单理解. [打印本页]

作者: pino    时间: 2015-4-15 21:51
标题: 对整除与取余的简单理解.
今天,做了一道编程题,要求打印对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的数.


作者: 舒少勇    时间: 2015-4-15 21:57
好的谢谢了   谢谢了
作者: 流转少年    时间: 2015-4-15 22:02
顶一个!!
作者: 夜空守望者    时间: 2015-4-15 22:03
徐徐,加油!
作者: 执念    时间: 2015-4-15 22:06
  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. }
复制代码



不要想太复杂了
作者: x331275955    时间: 2015-4-15 22:11
恩,刚一听,我也蒙了,看最后一句话,懂了。
作者: guanguan0622    时间: 2015-4-15 22:12
不错,很给力,也很简洁!




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2