首页 > 其他分享 >打印二进制的奇数和偶数

打印二进制的奇数和偶数

时间:2024-11-30 22:32:19浏览次数:9  
标签:奇数 二进制 32 sum 偶数 int printf

之前我们实现了二进制中1的统计,那我们也可以将二进制中的每一位打映并且将奇数和偶数也表达出来。

首先是每一位的打映,这个在之前的文章中有相似的思路,就是让要判断数与1相&,就能判断一位数,判断一位就让它向右移动一位,那么就让它重复32次就可以实现了:

int main()
{
	int a = 1;
	int i = 0;
	for (i = 0; i < 32; i++)
	{
		printf("%d ", (a >> i) & 1);
		
	}
	
	return 0;

那么就是奇数和偶数的判断了,这个也可以轻松实现了,只需要让奇数和偶数分别判断就行了

int main()
{
	int sum = 0;
	scanf("%d",&sum);
	int i = 0;
	printf("偶数: ");
		for (i = 0; i < 32; i+=2)
		{
			printf("%d ",(sum>>i)&1);
	    }
		printf("\n奇数: ");
		for (i = 1; i <= 32; i += 2)
		{
			printf("%d ", (sum >> i) & 1);
			}
	return 0;
}

标签:奇数,二进制,32,sum,偶数,int,printf
From: https://blog.csdn.net/credif/article/details/144147400

相关文章

  • MarsCode青训营序章Day1|稀土掘金-1.找单独的数、47.完美偶数计数、3.数组字符格式化
    稀土掘金-1.找单独的数(1.找单独的数)题目分析:n个同学每人持有1张写有数字的卡片,除了一个数字之外,其他每个数字均出现了刚好2次,要求设计时间复杂度为O(n)的算法从cards数组中查找该单独的数。题目重点:已知除单独的数外,其余的都是成对的数,则不存在重复次数超过2的数。需要使时......
  • C++_Linux二进制格式
    C++调试工具GDB适合用于调试代码逻辑错误和程序崩溃,二者结合使用可以大大提高错误排查效率Valgrind和Memcheck更适合用于检查程序的内存问题,如内存泄漏、非法内存访问等。GFlags是VS中自带的内存检查工具gprof是一个GNU项目中的性能分析工具,用于分析C和C++程序的......
  • golang实现比特币内核:区块链交易“transaction“二进制数据结构解析和代码实现1
    对于比特币,最重要的组成部分是交易。如果你需要通过比特币与他人交易,你可能需要像支付购买商品或服务一样,将一些比特币发送给他人。交易有四个关键字段,它们是版本、输入、输出和锁定时间。交易的二进制内容可能因不同的版本而有所不同,我们需要解析版本号以决定如何解码交易......
  • 二进制安装MySQL8
    二进制安装MySQL81.创建用户组[root@localhost~]#groupadd-g27mysql&&useradd-g27-u27-M-s/sbin/nologinmysql#创建了一个名为mysql的用户和组,分别赋予了它们特定的ID(UID和GID为27),并设置了用户不能直接登录系统,确保MySQL服务在一个具有特定权限和限制的......
  • [笔记]多重背包的优化(二进制,单调队列)
    P1776宝物筛选朴素多重背包for(inti=1;i<=n;i++){ for(intj=1;j<=m;j++){ for(intk=1;k*w[i]<=m&&k<=cnt[i];k++){ f[i][j]=f[i-1][j]; if(j>=w[i])f[i][j]=max(f[i][j],f[i-1][j-k*w[i]]+k*v[i]); } }}空间优化后:for(inti=1;i<=n;i++){......
  • Prometheus从二进制部署迁移Docker中更新到v3.0.0版本
    一Prometheus的迁移1.备份数据找到二进制安装的目录mkdir-p~/prometheus_backupcp-r/usr/local/prometheus~/prometheus_backup/创建挂载目录mkdir-p~/docker/prometheus/datamkdir-p~/docker/prometheus/config2.复制配置文件cp~/prometheus_backup......
  • LeetCode 67 --- 二进制求和
    voidreverse(char*a,intn){inti=0;intj=n-1;chartmp;while(i<j){tmp=a[i];a[i]=a[j];a[j]=tmp;i++;j--;}}char*addBinary(char*a,char*b){intm=strlen(a);......
  • 异或神操作_二进制底层
    二进制的基础java里位运算符是对补码处理的,java里取反符号~会导致符号位改变计算机里采用补码存储数值对于正数,其补码、原码和反码都是相同的。即,正数的补码就是其本身。对于负数,补码的计算过程相对复杂一些,但遵循固定的步骤:求原码:负数的原码是其绝对值的二进制表......
  • 递归(力扣:生成不含相邻零的二进制字符串
    题目(生成不含相邻零的二进制字符串)        给你一个正整数 n。        如果一个二进制字符串 x 的所有长度为2的子字符串中包含 至少 一个 "1",则称 x 是一个 有效 字符串。        返回所有长度为 n 的 有效 字符串,可以以任意顺......
  • golang: 给二进制文件增加版本信息
    一,代码:packagemainimport( "embed" "flag" "github.com/gofiber/template/html/v2" "net/http" "fmt" "runtime" "industry/config" "industry/routes")//构建版本信息var( V......