文章目录

  • 1. 进制是什么
  • 2. 进制的转换
  • 3. 计算机自己的想法
  • 4. C语言中的进制

1. 进制是什么

进制也就是进位计数制

基数与权:
二进制中0和1就是基数,2的次方数就是权,也就是位数

2. 进制的转换

可以使用进制计算器查看进制转换

3. 计算机自己的想法

计算机为什么使用二进制、八进制、十六进制?

  1. 实现容易:电路中的状态容易表示 0 和 1 (开与关、亮与灭、高与低)
  2. 可靠性高: 0 和 1 两个数字传输和处理不易出错
  3. 运算简单:与十进制数相比,二进制数的运算规则要简单
  4. 适合逻辑: 0 和 1 与逻辑代数中的真和假相吻合
  5. 易于转换:二进制与十进制数易于互相转换

八进制、十六进制能很好地反映二进制,书写阅读也方便

4. C语言中的进制

C语言不能直接表示二进制常量,可以用八进制、十进制、十六进制表示
八进制数字以0开头,十六进制数字以0x或0X开头

%o       打印出十进制数对应的八进制数
%#o     打印出八进制会在数字加前面的0
%x       打印出十进制数对应的十六进制数
%#X     以0x或0X开头,大写X则超9的字母就为大写

打印出100的八进制和十六进制,并打印出0-31的八进制和十六进制表:

#include <stdio.h>int main(){int a=100;printf("%#d\n",a);printf("%#o\n",a);printf("%#x\n",a);for(int i=0;i<32;++i){printf("%d\t%#o\t%#X\n",i,i,i);}
}

结果为:

100
0144
0x64
0   0   0
1   01  0X1
2   02  0X2
3   03  0X3
4   04  0X4
5   05  0X5
6   06  0X6
7   07  0X7
8   010 0X8
9   011 0X9
10  012 0XA
11  013 0XB
12  014 0XC
13  015 0XD
14  016 0XE
15  017 0XF
16  020 0X10
17  021 0X11
18  022 0X12
19  023 0X13
20  024 0X14
21  025 0X15
22  026 0X16
23  027 0X17
24  030 0X18
25  031 0X19
26  032 0X1A
27  033 0X1B
28  034 0X1C
29  035 0X1D
30  036 0X1E
31  037 0X1F

%i  输入一个整数,任意进制,输入时需要加上前缀 0 或者 0X
输入任意进制的数,输出对应八进制、十进制、十六进制:

#include <stdio.h>int main(){int n;printf("输入一个数字:");scanf("%i",&n);printf("八进制:%#o\n",n);printf("十进制:%d\n",n);printf("十六进制:%#x\n",n);
}

结果为:

输入一个数字:100
八进制:0144
十进制:100
十六进制:0x64

或结果为:

输入一个数字:053
八进制:053
十进制:43
十六进制:0x2b

C语言初阶:进制,计算机的美丽语言相关推荐

  1. c语言课程设计进制转换摘要,C语言课程设计-进制转换.doc

    沈阳航空航天大学 课 程 设 计 报 告 课程设计名称:C语言课程设计 课程设计题目: 二.八.十.进制转换程序 院(系):计算机学院 专 业:计算机科学与技术(物联网方向) 班 级学 号: 姓 名: ...

  2. c语言课程设计进制转换结构图,C语言课程设计————写下流程图! 谢谢

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 printf("---You have success read data from file!!!---\n"); return h ...

  3. c语言进制转换实验报告,c语言_各种进制转换.docx

    c语言_各种进制转换.docx c 语言 各种进制转换 计算机中常用的数的进制主要有二进制.八进制.十六进制. 2 进制,用两个阿拉伯数字0.1: 8 进制,用八个阿拉伯数字0.1.2.3.4.5.6 ...

  4. c语言oj答案进制转换,C语言编程的进制问题问题

    在我们的编译器,我用的是ADS   开发平台,现在RTC模块编程时,2410作为上位机,如下代码: n = rBCDDATE; if(n==1) time->day =0x31 ; 波斯历的日期 ...

  5. C语言初阶——6.进制

    C语言初阶--6.进制 1. 进制 百度百科: 进制也就是进位计数制,是人为定义的带进位的计数方法,对于任何一种进制-X进制,就表示每一位置上的数运算时都是逢X进一位. 十进制是逢十进一,十六进制是逢 ...

  6. C语言初阶_初识C语言(1)

    凡是过往,皆为序章 期末考试结束了,真是感慨良多啊...... C语言编程题大家都做对了多少呢? 不管怎么样,都已经过去了.不管你学得怎么样,都可以在接下来的时间里,我们一起重新回顾一遍C语言初阶的知 ...

  7. 五十分钟带你看遍C语言初阶语法(总纲)

    C语言初阶语法(总纲) 此篇博客包含了前面C语言所有的基础语法,写这一期的博客不仅是为了记录自己的学习成果也是为了让更多的朋友能学到对自己有用的知识,如果总有一个知识点帮助到了你,给卑微博主点点关注加 ...

  8. c语言ffffff错误,C语言打印16进制出现0xffffff现象的问题剖析!

    C语言打印16进制出现0xffffff现象的问题剖析! 其实类似的问题不是只在网络程序中才会出现的,看示例代码: 复制代码 1 #include 2 int main() 3 { 4     char ...

  9. c语言进制转换pdf下载,C语言实现任意进制转换.doc

    C语言实现任意进制转换.doc includestdio.h#includemath.h#includestring.hvoid dtox(double num,int jz)char xnum100 ...

最新文章

  1. 吴恩达:初学者如何进入深度学习领域?
  2. 用 GRUB 引导自己的操作系统
  3. JS报错修改日记(1):Uncaught ReferenceError: showQRcode is not defined
  4. Enhanced ABAP Development with Core Data Services (CDS)
  5. 这些你耳熟能详的“外国名牌”,其实都是中国的
  6. 知识工场 | 知识图谱暑假班开始报名啦!
  7. java简单纸牌游戏_活动回顾 | 畅玩法语纸牌游戏
  8. 2021全国大学生计算机系统能力大赛操作系统设计赛第一场研讨会隆重举行
  9. 【原创】StackDocklet 完美攻略
  10. 移动web前端开发注意事项
  11. C语言输出一个菱形图案,最优方案,不需要分上下两部分输出
  12. 外汇EA是什么?EA可靠吗?EA有什么缺点?
  13. 如何用xcode写c++
  14. 编写站点robots文件
  15. 【U盘主控芯片的优缺点】
  16. MySQL Key的含义
  17. 苏宁618公布8大福利 5亿膨胀红包已到位
  18. Sourcetree 使用
  19. 起源计划丨四大战队集结 向最后的荣耀冲刺
  20. 关于以太坊公开的4个测试网络的区别:

热门文章

  1. DLM learning materials
  2. java生成 *.crt和*.key文件与*.keystore *.jks文件的转换
  3. python pdf提取数据_python从PDF中提取数据的示例
  4. redis单点故障方案
  5. NEMU PA1实验思路
  6. ovs-vsctl设置ofport不成功处理
  7. python svg转png_如何使用Python3实现svg转png与pdf(附转换源代码)
  8. 前端面试题精编2020(js、html、小程序、React、ES6、Vue、算法、全栈热门视频资源)持续更新
  9. 你的程序要读入一个整数,范围是[-100000,100000]。然后,用汉语拼音将这个整数的每一位输出出来。 如输入1234,则输出: yi er san si
  10. ios input 无法自动聚焦拉起手机键盘