黑马程序员技术交流社区

标题: 面试时候的题,求解 [打印本页]

作者: greatboygirl    时间: 2015-5-7 22:29
提示: 该帖被管理员或版主屏蔽
作者: 仰望的繁华    时间: 2015-5-7 22:39
基础视频里讲过:二进制如何取出每一位数字,然后遇1计数就行了。
作者: cui0wei0    时间: 2015-5-7 23:41
内存中1的个数. 正整数就是二进制1的个数(其实也是补码), 负数就是就是该整数补码的1的个数
作者: 可乐zj    时间: 2015-5-7 23:45
  1. #include <stdio.h>
  2. int test1(int number)
  3. {
  4.     // 计数器
  5.     int count = 0;
  6.     // 循环检查二进制各位的值
  7.     for (int i = (sizeof(number)<<3)-1; i>=0; i--) {
  8.         if((number>>i)&1)
  9.             count += 1;
  10.     }
  11.    
  12.     return count;
  13. }
  14. int main()
  15. {
  16.     int n = 37;
  17.     int m = test1(n);
  18.     printf("%d\n",m);
  19.     return 0;
  20. }
复制代码

作者: 萌萌小喵喵    时间: 2015-5-7 23:59
好像是二进制
作者: ydy96315    时间: 2015-5-8 06:13
  1. #include <stdio.h>

  2. int printf2(int a)
  3. {
  4.     int count = 0;
  5.     for (int n=31; n>=0 ; n--)
  6.     {
  7.         printf("%d",(a>>n)&(1));//从第一位向后面依次和1 取 与;
  8.         if ((a>>n)&(1)) {
  9.             count++;
  10.         }
  11.         if ((n) % 4 == 0 ) {
  12.             printf("  ");
  13.         }
  14.     }
  15.     printf("\n");
  16.     return count;
  17. }

  18. int main ()
  19. {int a = 3;
  20.     printf("%d在内存中的储存形式为\n",a);
  21.     int no = printf2(a);
  22.     printf("其中有%d个1\n",no);
  23.     return 0;
  24. }
复制代码

作者: MllWing    时间: 2015-5-8 08:47
面试什么班的
作者: MTT    时间: 2015-5-8 09:14
视频里面有教过么
作者: mony    时间: 2015-5-8 09:24
可乐zj 发表于 2015-5-7 23:45

又学了一招,谢了
作者: LLLX77    时间: 2015-5-8 10:15
这太简单了吧。。。。。
作者: roblonely    时间: 2015-5-8 11:24
可以除以10取余数
作者: 魏建国    时间: 2015-5-8 16:34
仰望的繁华 发表于 2015-5-7 22:39
基础视频里讲过:二进制如何取出每一位数字,然后遇1计数就行了。

同学已经进黑马8期了把。幸好你先付费了。我同学108.5没进去。
作者: 仰望的繁华    时间: 2015-5-8 17:13
魏建国 发表于 2015-5-8 16:34
同学已经进黑马8期了把。幸好你先付费了。我同学108.5没进去。

每期第一批的话,多半就进了。
第二批抢的太厉害了...转行党拖不起时间,也只好先付了。
作者: 魏建国    时间: 2015-5-8 17:47
仰望的繁华 发表于 2015-5-8 17:13
每期第一批的话,多半就进了。
第二批抢的太厉害了...转行党拖不起时间,也只好先付了。 ...

我也是转行的,你原来是干嘛的
作者: mony    时间: 2015-5-8 18:20
仰望的繁华 发表于 2015-5-8 17:13
每期第一批的话,多半就进了。
第二批抢的太厉害了...转行党拖不起时间,也只好先付了。 ...

你已经进了第8期了?
作者: 仰望的繁华    时间: 2015-5-8 18:22
魏建国 发表于 2015-5-8 17:47
我也是转行的,你原来是干嘛的

雷电防护
作者: 仰望的繁华    时间: 2015-5-8 18:24
mony 发表于 2015-5-8 18:20
你已经进了第8期了?

嗯啊  这期人好多...群里已经110+了
作者: mony    时间: 2015-5-8 18:32
仰望的繁华 发表于 2015-5-8 18:24
嗯啊  这期人好多...群里已经110+了

一般每期招多少个啊?
作者: ios专用    时间: 2015-5-8 18:44
9期人确实不少
作者: 魏建国    时间: 2015-5-8 18:45
仰望的繁华 发表于 2015-5-8 18:22
雷电防护

这个研究生的专业呀
作者: 仰望的繁华    时间: 2015-5-8 20:02
魏建国 发表于 2015-5-8 18:45
这个研究生的专业呀

本科专业。

作者: 天马木偶    时间: 2015-5-8 20:03
视频到那一课教的??、
作者: 仰望的繁华    时间: 2015-5-8 20:06
mony 发表于 2015-5-8 18:32
一般每期招多少个啊?

论坛上写的计划是80左右,不过实际还得看教室大小吧....
作者: 魏建国    时间: 2015-5-8 20:08
仰望的繁华 发表于 2015-5-8 20:06
论坛上写的计划是80左右,不过实际还得看教室大小吧....

哥们叫什么呀
作者: 仰望的繁华    时间: 2015-5-8 20:13
魏建国 发表于 2015-5-8 20:08
哥们叫什么呀

群里QQ昵称一致,有备注名称。
作者: lincaesar    时间: 2015-5-8 21:43
学习了               




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