当前位置: 首页 > article >正文

(C语言)将整数转化为二进制(转化二进制教学)

#include <stdio.h>
#include <stdlib.h>void intToBinary(int num, char *binary) {int index = 0;for (int i = 31; i >= 0; i--) { // 假设 int 是 32 位int bit = (num >> i) & 1;   // 获取第 i 位binary[index++] = bit + '0'; // 将 bit 转换为字符 '0' 或 '1'}binary[index] = '\0'; // 添加字符串终止符
}int main() {int num;printf("请输入一个整数:\n");if (scanf("%d", &num) != 1) {printf("输入无效!\n");return 1;}char binary[33]; // 32 位二进制 + 1 位终止符intToBinary(num, binary);printf("二进制表示:%s\n", binary);return 0;
}

在此之前,要知道int类型是32位,因此就有以下过程:

1.for (int i = 31; i >= 0; i--)循环从最高位(第31位)到最低位(第0位),共32次迭代(假设 int 是32位)。2.int bit = (num >> i) & 1;num >> i:将 num 右移 i 位,使目标位成为最低位。例如 num=10(二进制 1010),i=3 时右移3位得到 0001。3.& 1:通过按位与操作提取最低位的值。0001 & 1 → 1,0010 & 1 → 0。4.binary[index++] = bit + '0';将整数 bit(0或1)转换为字符 '0' 或 '1'。0 + '0' 的 ASCII 是 48(即 '0'),1 + '0' 是 49(即 '1')。5.binary[index] = '\0';在字符数组末尾添加终止符,使其成为合法C字符串。

不过这样用到了字符数组,而且代码需要了解计算机底层逻辑,因此,不是很简便和易懂

明天出一个简单易懂的解法

以下是上述代码运行结果

请输入一个整数:
10
二进制表示:00000000000000000000000000001010请按任意键继续. . .

相关文章:

(C语言)将整数转化为二进制(转化二进制教学)

#include <stdio.h> #include <stdlib.h>void intToBinary(int num, char *binary) {int index 0;for (int i 31; i > 0; i--) { // 假设 int 是 32 位int bit (num >> i) & 1; // 获取第 i 位binary[index] bit 0; // 将 bit 转换为字符 0 或…...

Octave3D 关卡设计插件

课程参考链接 这位大佬有在视频合集中有详细的讲解&#xff0c;个人体验过&#xff0c;感觉功能很强大 https://www.bilibili.com/video/BV1Kq4y1C72P/?share_sourcecopy_web&vd_source0a41d8122353e3e841ae0a39908c2181 Prefab资源管理 第一步 在场景中创建一个空物体…...

【视频】文本挖掘专题:Python、R用LSTM情感语义分析实例合集|上市银行年报、微博评论、红楼梦、汽车口碑数据采集词云可视化

原文链接&#xff1a;https://tecdat.cn/?p41149 分析师&#xff1a;Zhenzhen Liu&#xff0c;Shuai Fung 作为数据科学家&#xff0c;我们始终关注如何从非结构化数据中提取高价值信息。本专题合集聚焦企业年报的文本分析技术&#xff0c;通过Python与R语言实战案例&#xff…...

反编译内容

“反编译” 是指将可执行的程序&#xff08;如二进制代码、字节码等&#xff09;转换回人类可读的高级语言源代码或某种中间表示形式的过程。 在软件领域&#xff0c;比如对于用 Java 编写的程序&#xff0c;编译后是字节码文件&#xff08;.class&#xff09;&#xff0c;反…...

机器学习扫盲系列(1) - 序

文章目录 序为什么要写这一系列&#xff1f;AI 概念科普原理性思维转行立flag 这一系列的计划神经网络训练框架 序 为什么要写这一系列&#xff1f; AI 概念科普 在各种AI概念铺天盖地向我们袭来的今天&#xff0c;我们作为其他方向的工作者&#xff0c;如果想转行做深度学习…...

英伟达“AI 超级碗”开幕

Nvidia的AI和机器人技术进展 2025年03月19日 | AI日报 ![](https://i-blog.csdnimg.cn/direct/e7838b88f17f40c9a435f6dc48d26c59.jpeg#pic_center) 欢迎各位人工智能爱好者。 Nvidia的CEO Jensen Huang刚刚拉开了他的“AI超级碗”&#xff0c;并发表了关于该公司最新芯片、…...

DeepSeek扫盲篇: V3 vs R1全面对比架构差异与蒸馏模型演进史

I. 引言&#xff1a;DeepSeek系列的技术革命 在全球大模型军备竞赛白热化的2023年&#xff0c;DeepSeek系列通过V3与R1两款里程碑产品&#xff0c;构建了中文大模型领域的"双塔奇观"。这两个看似矛盾的版本——前者以1280亿参数的MoE架构突破算力边界&#xff0c;后…...

UE5材质法线强度控制节点FlattenNormal

连法 FlattenNormal内部是这样的 FlattenNormal的作用是用来调整法线强度 连上FlattenNormal后 拉高数值...

【一起来学kubernetes】19、Pod使用详解

Kubernetes 中的 Pod 是最小的可调度和可管理单元&#xff0c;也是容器化应用的载体。Pod 封装了一个或多个紧密关联的容器&#xff0c;共享网络、存储和生命周期。 一、Pod 的核心概念 定义 Pod是Kubernetes中最小的部署单元&#xff0c;可以包含一个或多个容器。这些容器紧…...

第2章:容器核心原理:深入理解Namespace、Cgroup与联合文件系统

第2章:容器核心原理:深入理解Namespace、Cgroup与联合文件系统 作者:DogDog_Shuai 阅读时间:约20分钟 难度:中级 目录 1. 引言2. Linux容器核心技术3. Namespace详解4. Cgroup详解5. 联合文件系统6. 容器运行时原理...

计算机网络基础:认识网络硬件与传输介质

计算机网络基础&#xff1a;认识网络硬件与传输介质 一、前言二、网络硬件设备2.1 路由器2.1.1 路由器的基本概念与功能2.1.2 路由器的工作原理2.1.3 路由器的类型与应用场景 2.2 交换机2.2.1 交换机的基本概念与功能2.2.2 交换机的工作原理2.2.3 交换机的类型与应用场景 2.3 服…...

Android audio(8)-native音频服务的启动与协作(audiopolicyservice和audioflinger)

音频策略的构建 1、概述 2、AudiopolicyService 2.1 任务 2.2 启动流程 2.2.1 加载audio_policy.conf&#xff08;xml&#xff09;配置文件 2.2.2 初始化各种音频流对应的音量调节点 2.2.3 加载audio policy硬件抽象库 2.2.4设置输出设备 ps:audiopatch流程简介 2.2.5打开输出设…...

法兰克仿真软件FANUC CNC Guide v25.0 安装教程及中文设置

前言 下载地址在文末。 我们公司用新到一批FANUC 系统的设备&#xff0c;为方便使用就装了一个 FANUC 数控系统仿真软件FANUC CNC Guide v25.0 &#xff0c;还是最新版不是市面上流传的老版本。模拟学习一下。 安装操作 安装环境&#xff1a;Windows 11 专业版 24H2 安装程…...

事务隔离级别是?

事务隔离级别是数据库管理系统用来控制多个事务并发执行时对数据的可见性和一致性的机制。MySQL支持四种标准的事务隔离级别&#xff0c;它们定义了事务如何与其他并发事务交互。 四种事务隔离级别&#xff1a; READ UNCOMMITTED&#xff08;读未提交&#xff09; READ COMMIT…...

[JavaScript]如何利用作用域块避免闭包内存泄漏?

出自《你不知道的JavaScript》上卷 以下是本书给出的反例: function process (data) {...} var bigdata{...} process(bigdata); var btn document.getElementById(x); btn.addEventListener(click, function click{...});click会被回调在其他位置, 在addEventListener函数内…...

基于Selenium Grid的分布式测试架构设计与深度实践

一、引言&#xff1a;分布式测试的必然性与挑战 在数字化转型浪潮中&#xff0c;软件交付速度已成为企业竞争力的核心指标。敏捷开发、DevOps和持续交付&#xff08;CI/CD&#xff09;的普及&#xff0c;使得传统测试方法面临前所未有的挑战。单机测试模式在应对以下场景时显得…...

JavaScript 金额运算精度丢失问题及解决方案

JavaScript 金额运算精度丢失问题及解决方案 1. 前言2. 为什么 JavaScript 计算金额会精度丢失&#xff1f;2.1 JavaScript 使用 IEEE 754 双精度浮点数2.2 浮点运算错误示例**错误示例 1&#xff1a;0.1 0.2 ≠ 0.3****错误示例 2&#xff1a;浮点乘法精度问题** 3. 解决方案…...

【Python】使用ImageEnhance提升图片画质

使用ImageEnhance提升图片画质 from PIL import Image, ImageEnhance import ioimage_path "PhoneImg_20250319_160023607949_01.png"def enhance_image_quality(image_path):"""使用双三次插值算法提升画质"""with Image.open(imag…...

vector容器以及deque

vector 一.vector容器简介二.vector的默认构造1. 语法和功能2.vector带参数的构造3.vector的赋值4.vector的大小5.vector数值操作 deque简介&#xff1a; 一.vector容器简介 • vector是将元素置于一个动态数组中加以管理的容器。 std::vector 是 C 标准模板库&#xff08;STL…...

jmeter中,上传文件的MIME类型

‌text/plain‌&#xff1a;用于纯文本文件&#xff0c;如.txt文件。 ‌text/html‌&#xff1a;用于HTML文档&#xff0c;即.html文件。 ‌application/msword‌&#xff1a;Microsoft Word文档&#xff0c;即.doc和.docx文件。 ‌image/jpeg‌&#xff1a;JPEG图像&#x…...

《心理学与生活》2025最新网课答案

《心理学与生活》2025最新网课答案 文章目录 《心理学与生活》2025最新网课答案发展与教育单元测试情绪与情感单元测验人格与动机单元测试感知与记忆单元测试文化与社会单元测试 发展与教育单元测试 题数 20 棉花糖实验中哪些小孩长大后的表现更好&#xff08;&#xff09;。 …...

Java SE 面经

1、Java 语言有哪些特点 Java 语言的特点有&#xff1a; ①、面向对象。主要是&#xff1a;封装&#xff0c;继承&#xff0c;多态。 ②、平台无关性。一次编写&#xff0c;到处运行&#xff0c;因此采用 Java 语言编写的程序具有很好的可移植性。 ③、支持多线程。C 语言没…...

关于redis中的分布式锁

目录 分布式锁的基础实现 引入过期时间 引入校验id 引入lua脚本 引入看门狗 redlock算法 分布式锁的基础实现 多个线程并发执行的时候&#xff0c;执行的先后顺序是不确定的&#xff0c;需要保证程序在任意执行顺序下&#xff0c;执行逻辑都是ok的。 在分布式系统中&am…...

SQL Server数据库慢SQL调优

SQL Server中慢SQL会显著降低系统性能并引发级联效应。首先&#xff0c;用户直接体验响应时间延长&#xff0c;核心业务操作&#xff08;如交易处理、报表生成&#xff09;效率下降&#xff0c;导致客户满意度降低甚至业务中断。其次&#xff0c;资源利用率失衡&#xff0c;CPU…...

【css酷炫效果】实现鱼群游动动态效果

【css酷炫效果】实现小鱼游动动态效果 缘创作背景css代码创建div容器引入jquery引入鱼群js完整代码效果图成品资源下载链接:点击下载 缘 在开发系统功能的时候,无意间看到了小鱼游动特效,感觉很有意思,就在网上找了相关教程,分享给大家。 创作背景 刚看到csdn出活动了…...

kubectl describe pod 命令以及输出详情讲解

kubectl describe pod 命令格式 kubectl describe pod <pod-name> -n <namespace><pod-name>&#xff1a;Pod 的名称。 -n <namespace>&#xff1a;指定命名空间&#xff0c;默认是当前命名空间。 controlplane ~ ✖ kubectl describe pod newpods-d…...

Python实战(2)-数据库支持

使用简单的纯文本文件可实现的功能有限。诚然&#xff0c;使用它们可做很多事情&#xff0c;但有时可能还需要额外的功能。你可能希望能够自动完成序列化&#xff0c;此时可求助于shelve和pickle&#xff08;类似于shelve&#xff09;​。不过你可能需要比这更强大的功能。例如…...

Java面试黄金宝典4

1. 什么是泛型 &#xff1f;与 T 的区别 原理 泛型是 Java 编程语言中的一个强大特性&#xff0c;它提供了编译时类型安全检查机制&#xff0c;允许在定义类、接口和方法时使用类型参数。这些类型参数在使用时会被具体的类型所替代&#xff0c;从而实现代码的复用和类型安全。泛…...

从 Snowflake 到 Databend Cloud:全球游戏平台借助 Databend 实现实时数据处理

导读&#xff1a;某全球游戏平台为全球数百万玩家提供实时的技能型游戏体验与无缝的实时互动。对该游戏平台而言&#xff0c;保持数据的实时更新和实时分析&#xff0c;对提升玩家互动和留存率至关重要。他们在使用 Snowflake 进行实时数据摄取和分析时遇到了重大挑战&#xff…...

Docker搭建MySQL主从服务器

一、在主机上创建MySQL配置文件——my.cnf master服务器配置文件路径&#xff1a;/data/docker/containers/mysql-cluster-master/conf.d/my.cnf slave服务器配置文件路径&#xff1a; /data/docker/containers/mysql-cluster-master/conf.d/my.cnf master服务配置文件内容 …...