输入8个10进制整数,依次输出每一个数的八进制算法和十六进制表示。

1005人阅读
输入格式
输出格式
思路: 先转化为2进制,然后再转化为八进制。
数学上容易证明,2进制和十六进制的转化就是美4位取一为一组。 转化为8进制就是每3位取为一组。
由于4*n=n(mod3),所以要对length对3的余数进行讨论。
#include&iostream&
#include&vector&
#include&string&
int getDigit(char c)
if(c=='0')
else if(c=='1')
else if(c=='2')
else if(c=='3')
else if(c=='4')
else if(c=='5')
else if(c=='6')
else if(c=='7')
else if(c=='8')
else if(c=='9')
else if(c=='A')
return 10;
else if(c=='B')
return 11;
else if(c=='C')
return 12;
else if(c=='D')
return 13;
else if(c=='E')
return 14;
else if(c=='F')
return 15;
return -1;
int p[100000];
int q[400000];
int r[100000];
int g[3]={1,2,4};
int main()
while(n--)
int length=s.length();
for(int i=0;i&i++)
p[i]=getDigit(s[i]);
for(int i=0;i&i++)
for(int j=3;j&=0;j--)
q[4*i+j]=p[i]%2;
for(int i=0;i&4*i++)
cout&&q[i]&&& &;
if(length%3==0)
bool flag=0;
for(int i=0;i&4*i+=3)
int temp=0;
for(int j=2;j&=0;j--)
temp+=g[j]*q[i+2-j];
if(flag==0&&temp)
else cout&&
else if(length%3==1)
bool flag=0;
cout&&q[0];
for(int i=1;i&4*i+=3)
int temp=0;
for(int j=2;j&=0;j--)
temp+=g[j]*q[i+2-j];
if(flag==0&&temp)
else cout&&
else if(length%3==2)
bool flag=0;
if(q[0]*2+q[1])
cout&&q[0]*2+q[1];
for(int i=2;i&4*i+=3)
int temp=0;
for(int j=2;j&=0;j--)
temp+=g[j]*q[i+2-j];
if(flag==0&&temp)
else cout&&
版权声明:本文为博主原创文章,未经博主允许不得转载。
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:92226次
积分:3404
积分:3404
排名:第4572名
原创:258篇
评论:15条
(28)(72)(48)(8)(1)(1)(1)(36)(18)(48)(2)php中十进制、二进制、八进制和十六进制转换函数-常见问题-Php教程-壹聚教程网php中十进制、二进制、八进制和十六进制转换函数文章详细的介绍了关于php中十进制、二进制、八进制和十六进制转换函数应用,有需要的朋友可以参考一下下。 一,十进制(decimal system)转换函数说明
1,十进制转二进制 decbin() 函数,如下实例
echo decbin(12); //输出 1100
echo decbin(26); //输出 11010
(PHP 3, PHP 4, PHP 5)
decbin -- 十进制转换为二进制
string decbin ( int number )
返回一字符串,包含有给定 number 参数的二进制表示。所能转换的最大数值为十进制的 ,其结果为 32 个 1 的字符串。
2,十进制转八进制 decoct() 函数
echo decoct(15); //输出 17
echo decoct(264); //输出 410
(PHP 3, PHP 4, PHP 5)
decoct -- 十进制转换为八进制
string decoct ( int number )
返回一字符串,包含有给定 number 参数的八进制表示。所能转换的最大数值为十进制的 ,其结果为 &&。
3,十进制转十六进制 dechex() 函数
echo dechex(10); //输出 a
echo dechex(47); //输出 2f
(PHP 3, PHP 4, PHP 5)
dechex -- 十进制转换为十六进制
string dechex ( int number )
返回一字符串,包含有给定 number 参数的十六进制表示。所能转换的最大数值为十进制的 ,其结果为 &ffffffff&。
二,二进制(binary system)转换函数说明
1,二进制转十六制进 bin2hex() 函数
$binary = &&;
$hex = dechex(bindec($binary));
echo $//输出f9
(PHP 3 &= 3.0.9, PHP 4, PHP 5)
bin2hex -- 将二进制数据转换成十六进制表示
string bin2hex ( string str )
返回 ASCII 字符串,为参数 str 的十六进制表示。转换使用字节方式,高四位字节优先。
2,二进制转十制进 bindec() 函数
echo bindec('110011'); //输出 51
echo bindec(''); //输出 51
echo bindec('111'); //输出 7
(PHP 3, PHP 4, PHP 5)
bindec -- 二进制转换为十进制
number bindec ( string binary_string )
返回 binary_string 参数所表示的二进制数的十进制等价值。
bindec() 将一个二进制数转换成 integer。可转换的最大的数为 31 位 1 或者说十进制的 。PHP 4.1.0 开始,该函数可以处理大数值,这种情况下,它会返回 float 类型。
三,八进制(octal system)转换函数说明
八进制转十进制 octdec() 函数
echo octdec('77'); //输出 63
echo octdec(decoct(45)); //输出 45
(PHP 3, PHP 4, PHP 5)
octdec -- 八进制转换为十进制
number octdec ( string octal_string )
返回 octal_string 参数所表示的八进制数的十进制等值。可转换的最大的数值为
或十进制的 。PHP 4.1.0 开始,该函数可以处理大数字,这种情况下,它会返回 float 类型。
四,十六进制(hexadecimal)转换函数说明
十六进制转十进制 hexdec()函数
var_dump(hexdec(&See&));
var_dump(hexdec(&ee&));
// both print &int(238)&
var_dump(hexdec(&that&)); // print &int(10)&
var_dump(hexdec(&a0&)); // print &int(160)&
(PHP 3, PHP 4, PHP 5)
hexdec -- 十六进制转换为十进制
number hexdec ( string hex_string )
返回与 hex_string 参数所表示的十六进制数等值的的十进制数。hexdec() 将一个十六进制字符串转换为十进制数。所能转换的最大数值为 7fffffff,即十进制的 。PHP 4.1.0 开始,该函数可以处理大数字,这种情况下,它会返回 float 类型。
hexdec() 将遇到的所有非十六进制字符替换成 0。这样,所有左边的零都被忽略,但右边的零会计入值中。
五,任意进制转换 base_convert() 函数
$hexadecimal = 'A37334';
echo base_convert($hexadecimal, 16, 2);//输出
base_convert
(PHP 3 &= 3.0.6, PHP 4, PHP 5)
base_convert -- 在任意进制之间转换数字
string base_convert ( string number, int frombase, int tobase )
返回一字符串,包含 number 以 tobase 进制的表示。number 本身的进制由 frombase 指定。frombase 和 tobase 都只能在 2 和 36 之间(包括 2 和 36)。高于十进制的数字用字母 a-z 表示,例如 a 表示 10,b 表示 11 以及 z 表示 35。
上一页: &&&&&下一页:相关内容在汇编语言中,如何表示二进制、八进制、十进制和十六进制的数值? [文字模式]
- 看雪安全论坛
查看完整版本 :
游戏而已在汇编语言中,如何表示二进制、八进制、十进制和十六进制的数值?
对数值数据在计算机内部的各种表示,二进制、八进制和十六进制之间的转换方法。
  还不熟。。不知从何学起。
望高手指点一二。。。
游戏而已自己顶。
fengxu基础知识,看一看汇编语言的教材吧,会有详尽的讲解
游戏而已能提供这方面的教程吗???
书上的介绍个大概。。。不够详细呀//
fengxu最初由 游戏而已 发布
能提供这方面的教程吗???
书上的介绍个大概。。。不够详细呀//
你看的是汇编语言的教材吗? 个人认为教材上介绍的应该是最详尽的了.去书店买一本吧,要学破解,这是基础.
游戏而已我买的都是汇编类的书。。
未发现有专门介绍这些的。。。
lywindly在汇编语言中运算都使用的十六进制
H-----代表16
0100 代表2
1234 代表10
游戏而已楼上的。你这些是从哪学来的
能介绍下吗?或者发一些资料。详细点的 。。
dINOWo ye bang ni ding.
The art of assembly language.
Just Bible.
游戏而已汇编语言的艺术???
楼上的。。我E文不好。。请指教。。
dINOI don't know where to get the Chinese version.
I 'm not a god.
Can't translate the Bible to you.
游戏而已最初由 dINO 发布
I don't know where to get the Chinese version.
I 'm not a god.
Can't translate the Bible to you.
既然这样。。没关系。。麻烦其他老大解释。。。
dINOLaoda,stand up.
It's show time.
forgotHEX:h
/upload/image/1.JPG_72336.jpg
dINOforgot:f
KiDforgot,你的桌面主题哪里搞到的,能不能共享 :D
forgot最初由 KiD 发布
forgot,你的桌面主题哪里搞到的,能不能共享 :D
qxhzzz(1)二进制:由0,1组成其后跟以字母B,eg B
(2)十进制:由0-9的数字组成。一般情况下,后面不必加上表记,在指定其他的基数的情况下,后面可跟字母D,eg 178D
(3)十六进制:由0-9及字母A-F组成的数,后面跟字母H,第一个字符必须是0-9,如果以A-F开头,已在其前加0,eg 0ffffh
.radix 为操作可以把默认的基数改为2-16范围之类的任何基数。
.radix expression
游戏而已为什么我的计算机内没有。
我装的WIN2000。。你的是什么系统??XP???
醉啸天这是精华5中
&商朝子的破解教学&中的一段
标 题: 第二章--汇编语言
发信人:商朝子
时 间: 10:37pm
接着说一下十进制数转换为二进制数的方法:
这样的方法到底有多少,我也不清楚,我只讲最简单的一个-除法:
把要转换的十进制数的整数部分不断除以2,并记下余数,直到商为0为止。
例:N=34D(说明一下,你可能在某些数字的后边看到过加有一个字母,这个字母便是用来表示数制的,十进制数用D,二进制数用B,八进制数用O,十六进制数用H)
所以N=34D=100010B。
对于被转换的十进制数的小数部分则应不断乘以2,并记下其整数部分,直到结果的小数部分为0为止。
十六进制数与二进制数、十进制数之间的转换:
总的来说,十六进制数与二进数之间的转换,应该算是很简单的了,你只需把与之相对应的数值进行转换就成了。
十六进制数的基数是16,共有16个数码,它们是0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F。其中A表示十进制中的10,其余类推。它们与二进制和十进制数的关系如下:
0H=0D=D=D=D=D=D=D=D=D=D=1001B,AH=10D=1010B,BH=11D=1011B,CH=12D=1100B,DH=13D=1101B,EH=14D=1110B,FH=15D=1111B
所以,二进制与十六进制之间要进行转换的话,只要把它们由低到高每四位组成一级,直接用十六进制来表示就可以了:
十六进制转二进制则用只需将每一位用四位二进制数来表示就成了:
最后是十六进制数与十进制数之间的互相转换
十六进制数转十进制数
各位十六进制数与其对应权值的乘积之和即为与此十六进制数相对应的十进制数。
例:N=BF3CH
=11*16的3次方+15*16的2次方+3*16的1次方+12*16的0次方
=11*+3*16+12*1
十进制转十六进制
我还是只讲最简单的除法:
把要转换的十进制数的整数值部分不断除以16,并记下余数,直到商为0为止。
例N=48956D
所以N=48956D=BF3CH。C语言有符号整数,可以用八进制,十六进制输出么?
[问题点数:20分]
C语言有符号整数,可以用八进制,十六进制输出么?
[问题点数:20分]
不显示删除回复
显示所有回复
显示星级回复
显示得分回复
只显示楼主
相关帖子推荐:
2014年2月 C/C++大版内专家分月排行榜第二2013年4月 C/C++大版内专家分月排行榜第二2013年3月 C/C++大版内专家分月排行榜第二2012年12月 C/C++大版内专家分月排行榜第二2012年11月 C/C++大版内专家分月排行榜第二2012年8月 C/C++大版内专家分月排行榜第二
2014年12月 C/C++大版内专家分月排行榜第三2014年5月 C/C++大版内专家分月排行榜第三2014年3月 C/C++大版内专家分月排行榜第三2013年12月 C/C++大版内专家分月排行榜第三2013年10月 C/C++大版内专家分月排行榜第三2013年9月 C/C++大版内专家分月排行榜第三2013年7月 C/C++大版内专家分月排行榜第三2013年5月 C/C++大版内专家分月排行榜第三2013年2月 C/C++大版内专家分月排行榜第三2013年1月 C/C++大版内专家分月排行榜第三2012年9月 C/C++大版内专家分月排行榜第三
2013年1月 Oracle大版内专家分月排行榜第二2012年12月 Oracle大版内专家分月排行榜第二2012年9月 Oracle大版内专家分月排行榜第二
2012年11月 Oracle大版内专家分月排行榜第三2012年8月 Oracle大版内专家分月排行榜第三
2013年 总版技术专家分年内排行榜第三
2012年 总版技术专家分年内排行榜第七
本帖子已过去太久远了,不再提供回复功能。c语言编程题:从键盘输入一个十进制数,将其转换为二进制、八进制和十六进制数,并同时输出。 - 下载频道
- CSDN.NET
&&&&c语言编程题:从键盘输入一个十进制数,将其转换为二进制、八进制和十六进制数,并同时输出。
c语言编程题:从键盘输入一个十进制数,将其转换为二进制、八进制和十六进制数,并同时输出。
c语言编程题:从键盘输入一个十进制数,将其转换为二进制、八进制和十六进制数,并同时输出。
嵌到我的页面
<input type="text" readonly="true" value="">
若举报审核通过,可奖励20下载分
被举报人:
举报的资源分:
请选择类型
资源无法下载
资源无法使用
标题与实际内容不符
含有危害国家安全内容
含有反动色情等内容
含广告内容
版权问题,侵犯个人或公司的版权
*详细原因:
您可能还需要
课程资源下载排行

我要回帖

更多关于 八进制小数转十进制 的文章

 

随机推荐