c/c++:2进制、8进制、10进制、16进制和进制之间的转换,c语言输出匹配格式%

news2024/10/4 9:27:43

c/c++:2进制、8进制、10进制、16进制和进制之间的转换,c语言输出匹配格式%

2022找工作是学历、能力和运气的超强结合体,遇到寒冬,大厂不招人,此时学会c++的话,
我所知道的周边的会c++的同学,可手握10多个offer,随心所欲,而找啥算法岗的,基本gg
提示:系列c++学习的基础和高阶知识,用于公司生产实践中,实实在在的公司部署产品要用的,因为c++速度快,
而java和Python速度慢,自然往硬件里面部署算法啥的,都得用c++或者c,因此本科学的c很重要,后来的Python或者java就没有那么重要了,
c/c++系列文章:
【1】c++:c语言优缺点,visual studio2019如何新建项目,写hello world程序
【2】c/c++:gcc安装,gcc编译hello world文件,system函数调用系统命令,sleep函数
【3】linux下gcc的编译过程和功能,预处理,编译,汇编,链接,.c预处理为.i文件.s文件.o文件.exe文件
【4】c/c++:windows平台下依赖的动态库,c底层是汇编语言,程序断点调试,反汇编,vs快捷键
【5】c/c++:数据类型,常量变量,标识符,有符号整型,无符号unsigned,字符类型,字符串类型,实数类型,浮点型,科学计数法


文章目录

  • c/c++:2进制、8进制、10进制、16进制和进制之间的转换,c语言输出匹配格式%
    • @[TOC](文章目录)
  • 进制
  • 十进制转二进制数:除2取余法
  • 2进制转10进制
  • 3位二进制数就是8进制
  • 4位二进制数就是16进制
  • 总结

进制

d进制数

d进制【d=10】
1=1×10的0次方
10=0×10的0次方+1×10的1次方
100=0×10的0次方+0×10的1次方+1×10的2次方
1000=0×10的0次方+0×10的1次方+0×10的2次方+1×10的3次方

数的值=各个位上的权*d的几次方【位次】

比如:
11
1×10的0次方+1×10的1次方=11
111
1×10的0次方+1×10的1次方+1×10的2次方=111

同理d=2时,2进制,计算机用

d进制【d=2】
1=1×2的0次方
10=0×2的0次方+1×2的1次方
100=0×2的0次方+0×2的1次方+1×2的2次方
1000=0×2的0次方+0×2的1次方+0×2的2次方+1×2的3次方

数的值=各个位上的权*d的几次方【位次】

8421
1000=8
1001=9
1010=10

懂?
00=0
01=1
10=2
11=3
100=4
101=5
101=5
110=6
111=7
1000=8

人类有10根手指头,所以用10进制数

那10进制数如何写入计算机?
4字节高位–低位分别用16进制写
本质上2进制数

在这里插入图片描述
56=163+81+40+20+1*0
也就是00111000

4位二进制表示1个16进制数

所以呢就是38H

如果是4个字节
那就是32位表示一个数
0038H

高位放高地址
低位放低地址

十进制转二进制数:除2取余法

好说
除2取余法,最后反向列出来
当商为0时,停止

在这里插入图片描述
在这里插入图片描述
你用计算器验证一波就知道了
在这里插入图片描述在这里插入图片描述

2进制转10进制

d进制数,上面说过了
数的值=各个位上的权*d的几次方【位次】

这很简单

1024 512 256 128 64 32 16 8 4 2 1
10101101
分别用各个权对应相乘相加
就得了10进制数了

懂了吧?easy

小数点后的二进制是乘2取整
在这里插入图片描述

3位二进制数就是8进制

也是421这种权重
对应权,就是二进制
比如7,实际就是111
对应4+2+1
在这里插入图片描述
二进制转8进制,就是3位一组,转为8进制数即可
从尾部3个一组哦
前面不够补0
懂?
在这里插入图片描述

在这里插入图片描述

4位二进制数就是16进制

16进制0–15
0–9ABCDEF表示
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
16进制转10进制
在这里插入图片描述
16进制转2进制
用4位二进制表示一个16进制凑即可
8421码算一个16进制数

在这里插入图片描述
2进制转16进制,很简单,4位组合即可
在这里插入图片描述
使用频率最高的10进制
还有就是16进制,范围大一些
2进制太繁杂了

打印格式:
%d十进制
%o八进制
%x十六进制
没有二进制的匹配格式哦


void f10(void)
{
	int m = 0x15F4;//16进制可以赋值
	int n = 10;//10进制可以赋值
	int p = 010110;//2进制不可以赋值

	printf("十六进制m=%x\n", m);
	printf("十进制m=%d\n", m);
	printf("八进制m=%o\n", m);
	printf("二进制m=%b\n", m);
}

在这里插入图片描述
懂了吧

0x1F这种,最多
大小写都可以哦

个上匹配的格式很多了已经。

%c字符
%f浮点型
%lf双精度
%d十进制
%hd短整型short
%ld long
%lld longlong
%u无符号整型
%hu
%lu
%llu
在这里插入图片描述
%s表示字符串
用的也很多
基本就这些咯


总结

提示:重要经验:

1)
2)学好c++,即使经济寒冬,手握10个大厂offer绝对不是问题!
3)笔试求AC,可以不考虑空间复杂度,但是面试既要考虑时间复杂度最优,也要考虑空间复杂度最优。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/421890.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Linux主机用WordPress搭建网站

文章目录一、搭建过程1.1、切换到超户1.2、更新1.3、安装一些包1.4、安装wordpress1.5、配置MariaDB1.6、创建WordPress数据库1.7、配置WordPress1.8、登录WordPress1.9、安装phpMyAdmin一、搭建过程 1.1、切换到超户 sudo su1.2、更新 apt-get update -y1.3、安装一些包 a…

我在windows10下,使用CMake gui 编译krita源码

系列文章目录 文章目录系列文章目录前言一、krita编译说明二、使用步骤前言 我在windows10下,使用CMake gui 编译krita源码 where is the source code:E:/krita-dev/krita where to build the binaries:E:/krita-dev/krita_camke current generator:MinGW Makefile…

成为程序员后才知道的6件事,第5点看完很心酸!

曾几时,总觉得IT精英外表光鲜亮丽,尤其是程序员咔咔咔打代码,月入几个w,不光挣得多,上班期间还能玩电脑游戏。但是,真正当了程序员之后,OMG!我再也不这样想了!好多事都是当了程序员才…

【C语言深入】带你了解C语言中的可变参数列表

【C语言深入】带你了解C语言中的可变参数列表一、可变参数函数的使用方式1、使用方式2、自定义可变把参数函数2.1、三个宏一个类型2.2、实现方式二、可变参数列表的原理1、va_start1.1、_ADDRESSOF1.2、关于临时拷贝的一个小知识点1.3、_INTSIZEOF2、va_arg3、va_end一、可变参…

23种设计模式总结(大白话,适合小白)

文章目录什么是设计模式?设计模式的分类创建型模式创建型类类型工厂方法模式创建型对象型抽象工厂模式生成器模式原型模式单例模式结构型模式结构型类类型适配器模式结构型对象型桥接模式组合模式装饰器模式外观模式享元模式代理模式行为型模式行为型对象型命令模式…

【C++PrimerPlus】第五章 循环和关系表达式

文章目录5.1 for循环5.1.1 for循环的组成部分5.1.2 回到for循环5.1.3 修改步长5.1.4 使用for循环访问字符串5.1.5 递增运算符 ()和递减运算符(--)5.1.6 副作用和顺序点5.1.7 前缀格式与后缀格式5.1.8 递增/递减和指针5.1.9 组合赋值运算符5.1.10 复合语句![](https://img-blog.…

Qt Quick - ToolTip

Qt Quick - ToolTip使用总结一、概述二、附带的ToolTip三、延迟和超时四、自定义ToolTip五、定制化一、概述 ToolTip 其实就是ToolTip,所谓ToolTip其实就是一段简短的文本,告知用户控件的功能。它通常置于父控件之上或之下。提示文本可以是任何富文本格…

常用异常检测模型的应用

常用异常检测模型的应用 描述 异常数据检测不仅仅可以帮助我们提高数据质量,同时在一些实际业务中,异常数据往往包含有价值的信息,如异常交易、网络攻击、工业品缺陷等,因此异常检测也是数据挖掘的重要手段。常用的异常检测模型…

【通过Cpython3.9源码看看python字符串拼接:“+”为什么比join低效】

基本说明 Python字符串拼接中,使用join()方法比运算符更高效,主要原因在于字符串对象的不可变性和内存分配策略。 首先,我们要知道Python字符串是不可变的对象。这意味着,每次使用运算符进行字符串拼接时,Python需要…

Vue2-黑马(四)

目录: (1)axios-响应格式 (2)axios-拦截器 (3)vue2-条件渲染 (4)vue2-列表渲染 (1)axios-响应格式 下面看axios的返回响应对象的内部组成 后…

【grpc02】安装protobuf和protoc

目录 Windows环境 下载通用编译器 配置环境变量 安装go专用的protoc的生成器 GoLang中安装插件 如何使用protobuf呢? Mac环境 Protoc安装 Protoc-gen-go的安装 Windows环境 下载通用编译器 下载地址:v3.20.1 Releases protocolbuffers/pr…

【优化算法】使用遗传算法优化MLP神经网络参数(TensorFlow2)

文章目录任务查看当前的准确率情况使用遗传算法进行优化完整代码任务 使用启发式优化算法遗传算法对多层感知机中中间层神经个数进行优化,以提高模型的准确率。 待优化的模型: 基于TensorFlow2实现的Mnist手写数字识别多层感知机MLP # MLP手写数字识别…

Java支付SDK接口远程调试 - 支付宝沙箱环境【公网地址调试】

文章目录1.测试环境2.本地配置3. 内网穿透3.1 下载安装cpolar内网穿透3.2 创建隧道4. 测试公网访问5. 配置固定二级子域名5.1 保留一个二级子域名5.2 配置二级子域名6. 使用固定二级子域名进行访问转发自CSDN远程穿透的文章:Java支付宝沙箱环境支付,SDK接…

Linux命令·traceroute

通过traceroute我们可以知道信息从你的计算机到互联网另一端的主机是走的什么路径。当然每次数据包由某一同样的出发点(source)到达某一同样的目的地(destination)走的路径可能会不一样,但基本上来说大部分时候所走的路由是相同的。linux系统…

移动端项目开发总结(一)

移动端项目开发总结(一) 前阵子做租赁项目,风风火火的上线,趁现在还没忘,把用到的东西整理以下,算是对于这个项目的回顾吧。 特效一 : 移动端适配 需求 移动端适配,采用rem单位。…

深入理解Java虚拟机——Java内存区域

1.前言 Java内存区域也叫运行时数据区域,要记得把Java内存模型(JMM区分开来)。 根据线程是否共享可以把运行时数据区如上图所分。 线程共享 堆内存方法区 线程私有 栈内存 本地方法栈虚拟机栈 程序计数器 接下来,将逐个介绍…

什么是文件传输协议,文件传输协议又是怎么工作的

文件传输协议FTP是一种仍在使用的协议,在上载和下载文件时仍然比较流行,通常是那些太大的文件,需要花费很长时间才能通过常规电子邮件程序作为附件下载进行传输。 从技术上讲,它是“文件传输实用程序”,是许多TCP / I…

腾讯云4核8G12M轻量服务器配置性能评测

腾讯云轻量4核8G12M服务器,之前是4核8G10M配置,现在公网带宽和月流量包整体升级,12M公网带宽下载速度可达1536KB/秒,系统盘为180GB SSD盘,每月2000GB免费流量,腾讯云百科来详细说下4核8G12M轻量应用服务器配…

碳化硅材料在功率半导体中的优劣

开关电源工作频率的提高受到开关损耗的制约 开关电源的工作频率是指开关变换器操作的频率。在开关电源中,一个开关变换器被用来将直流(DC)能源转换为可用于电子设备的交流(AC)能源。开关变换器的基本原理是通过对开关…

3.4 函数的单调性和曲线的凹凸性

学习目标: 如果我要学习函数的单调性和曲线的凹凸性,我会采取以下几个步骤: 理解概念和定义:首先,我会学习单调性和凹凸性的定义和概念。单调性是指函数的增减性质,可以分为单调递增和单调递减&#xff1b…