首页 > 系统相关 >编写代码,求一个整数在内存中的二进制中1的个数

编写代码,求一个整数在内存中的二进制中1的个数

时间:2022-11-17 21:43:05浏览次数:67  
标签:count 二进制 个数 整数 int num 内存 include

首先,我们应该知道整数在内存中的存储形式为其补码。

#include<stdio.h>
#include<string.h>
#define _CRT_SECURE_NO_WARNINGS1
int main()
{
int num = 0;
int count = 0;
scanf_s("%d", &num);
while (num)
{
if (num % 2 == 1)
count++;
num = num / 2;
}
printf("%d\n", count);
return 0;
}


标签:count,二进制,个数,整数,int,num,内存,include
From: https://blog.51cto.com/u_15806064/5866161

相关文章

  • C和C++的动态内存管理
    内存分区栈区(stack):存放函数形参和局部变量(auto类型)和返回值,由编译器自动分配和释放堆区(heap):用于动态内存分配该区由程序员申请后使用,需要手动释放否则会造成内......
  • C语言动态内存开辟
    1.动态内存管理1.为什么存在动态内存管理当前我们知道的内存的使用方式主要是两种。1.创建一个变量inta=10;//局部变量-在栈区中开辟空间intg_a=10;//全局变量-静......
  • 48:字典_核心底层原理_内存分析_存储键值对过程
    ###字典核心底层原理(重要)字典对象的核心是散列表。散列表是一个稀疏数组(总是有空白元素的数组),数组的每个单元叫做bucket。每个bucket有两部分:一个是键对象的引用,一个......
  • 创建对象内存分析
    创建对象内存分析packagecom.oop.demo03;publicclassPet{publicStringname;publicintage;publicvoidshout(){System.out.println("......
  • shell 两个数组比较,得到元素的并集、交集等
    linuxshell实现数组比较,取元素的并集、交集时,可以使用sort排序、uniq统计和awk数据过滤。shell实现如下file_list_1=("test1""test2""test3""test4""test5""tes......
  • 基于centos7.9二进制部署kubernetes1.25.4
    基于centos7.9二进制部署kubernetes1.25.41、环境准备IP地址主机角色系统192.168.100.153k8s-master01K8S集群主节点Centos7.9192.168.100.154k8s-ma......
  • Day7-5 创建对象的内存分析
    创建对象内存分析  packagecom.oop.demo03;​publicclassPet{publicStringname;publicintage;​publicvoidshout(){S......
  • 状态机编码方式:二进制binary、独热码 one-hot、格雷码 gray
    关于有限状态机中常用的三种编码方式各自的优缺点 二进制编码:优点:每次加一,编码方式简单;压缩编码,使用寄存器少缺点:翻转次数多,功耗大;易出现毛刺;状态跳转需要组合逻辑多;......
  • 两个数组的交集II
    两个数组的交集一、题目描述给定两个数组nums1和nums2,求出给相交的元素的即可。返回的结果元素,应与两个数组中元素出现的次数相同,如果不相同,则返回较小的次数。实例1:......
  • 操作系统的内存究竟是怎么一回事?
    摘要:操作系统的内存究竟是怎么一回事?带你完整复习一遍《操作系统》一书中有关内存的所有知识点本文分享自华为云社区《操作系统的内存究竟是怎么一回事?带你完整复习一遍《......