请问这个要求输出八进制,为什么答案不是0256,0400,而是256,400呢
请问这个要求输出八进制,为什么输出的形式和八进制前面带0的形式不同呢
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
1条回答 默认 最新
- 17丶 2022-10-06 23:51关注
如果要输出4位的话可以写成%.4o,表示输出的字符长度为4;
你用%o输出,就说明输出的是八进制,他不会输出的时候给你表明是八进制
机器读的都是二进制的机器码,以十六进制存入地址,他读的时候也是读十六进制的数,格式化输出八进制,他就会给你转换成八进制的数输出
那个0256中的0只是给机器一个指令,让机器明白这是一个八进制的数,存进去该怎么存还是怎么存,它输出的时候可不会给你说明是几进制,你要判断就得看是以什么格式输出的#include <stdio.h> #include <stdlib.h> int main() { int m = 0256,n = 256; printf("%.4o %.4o",m,n); return 0; }
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 1无用
悬赏问题
- ¥15 hexo+github部署博客
- ¥15 求螺旋焊缝的图像处理
- ¥15 blast算法(相关搜索:数据库)
- ¥15 请问有人会紧聚焦相关的matlab知识嘛?
- ¥15 网络通信安全解决方案
- ¥50 yalmip+Gurobi
- ¥20 win10修改放大文本以及缩放与布局后蓝屏无法正常进入桌面
- ¥15 itunes恢复数据最后一步发生错误
- ¥15 关于#windows#的问题:2024年5月15日的win11更新后资源管理器没有地址栏了顶部的地址栏和文件搜索都消失了
- ¥100 H5网页如何调用微信扫一扫功能?