计算一个32字节的数据中,有多少个1
2014-03-14 22:18
176 查看
解析:int型数据正好为32位,可直接计算int转化为二进制后1的个数。
#include "stdafx.h"
int main(int argc, char* argv[])
{
int t;
int i;
int count=0;
printf("Please input the num:");
scanf("%d",&t);
for(i=0;i<32;i++)
{
if((t&(t<<i))!=0)
{
count++;
}
}
printf("The num of 1 is:");
printf("%d",count);
printf("\n");
return count;
}
运行如下:
20转化为二进制位 0001 0010,正好只有两个1。
#include "stdafx.h"
int main(int argc, char* argv[])
{
int t;
int i;
int count=0;
printf("Please input the num:");
scanf("%d",&t);
for(i=0;i<32;i++)
{
if((t&(t<<i))!=0)
{
count++;
}
}
printf("The num of 1 is:");
printf("%d",count);
printf("\n");
return count;
}
运行如下:
20转化为二进制位 0001 0010,正好只有两个1。
相关文章推荐
- vs2008 C# 怎么调试C++ dll[转]
- jsp\struts1.2\struts2 中文件上传(转)
- InstallShield FeatureGetData 判断功能是否选定
- 黑马程序员- 第二十天(文件)
- windows下使用PyCharm编程,import的类找不到
- 10003 - UVa Online Judge
- jsp学习--JSP运行原理,九大隐式对象和JSP常用标签
- 用jdbc连接Oracle数据库
- C++浅层与深层复制构造函数
- Incorrect string value: '\xF0\x9F\x92\x90</...' for column 'xxx' at row 1
- for循环语句详解
- error while loading shared libraries: libluajit-5.1.so.2
- linux下配置ip地址四种方法(图文方法
- 嵌入式系统设计师考试完美笔记
- Head First -- 工厂方法
- 公司java项目开发规范
- AS3的SWC代码混淆方案
- PreferenceActivity:类似于setting菜单样式的activtity
- ORACLE PLSQL DEVELOPER 中显示科学计数法
- 黑马程序员-第十九天( IO(Input Output)流)