#define _CRT_SECURE_NO_WARNINGS 1 #include<stdio.h> #include<stdlib.h> Fun1(int a) //用移位的方法 { int i = 0; int count1 = 0; for (i = 0; i < 32; i++) { if ((a>>i)&1==1) { count1++; } } return count1; } Fun2(int a) //用n&(n-1)的方法 循环了几次就有几个1 { int count2 = 0; while (a) { a=a&(a - 1); count2++; } return count2; } int main() { int a = 0; printf("请输入一个二进制数\n"); scanf("%d", &a); int count1 = Fun1(a); printf("%d\n", count1); int count2 = Fun2(a); printf("%d\n", count2); system("pause"); return 0; }
写一个函数返回参数二进制中 1 的个数
原创be_better_ ©著作权
©著作权归作者所有:来自51CTO博客作者be_better_的原创作品,请联系作者获取转载授权,否则将追究法律责任
上一篇:用C语言实现三子棋游戏
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
第五节 二进制安装docker
二进制安装docker
docker linux 开机自启 -
写一个函数返回参数二进制中 1 的个数
用C语言写一个函数返回参数二进制中 1 的个数,利用十进制转换成二进制的算法编写核心程序。
C语言 写一个函数返回参数二进制中 1 的个数。 -
用一个函数返回参数二进制中1的个数
数火柴棍(写函数返回参数二进制中1的个数)
二进制 参数 返回