码迷,mamicode.com
首页 > 其他好文 > 详细

如何利用c返回一个参数中其二进制数中1的个数

时间:2016-03-17 07:14:01      阅读:150      评论:0      收藏:0      [点我收藏+]

标签:include   system   return   二进制   十进制   

#include<stdio.h>

#include<stdlib.h>

int _Count(int n)

{

int arr[30];

int i=0;

int j=0;

int m=0;

while(n)

{

arr[i++]=n%2;

n=n/2;

j++;

}

for(i=0;i<=j;i++)

{

if((arr[i]^1)==0)

m++;

}

return(m);

}

int main()

{

int num;

int count=0;

printf("请输入一个数:");

scanf_s("%d",&num);

count=_Count(num);

printf("count=%d\n",count);

system("pause");

return 0;

}



//这种解法是先将一个十进制的数字转换为二进制的数字并将其保存在一个数组中,然后将数组中的数字与“1”异或,根据“相同为0相异为1”的原则计算出其中1的个数。这种方法简单通俗易懂,更容易理解一些



技术分享

如何利用c返回一个参数中其二进制数中1的个数

标签:include   system   return   二进制   十进制   

原文地址:http://10969583.blog.51cto.com/10959583/1751950

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!