永发信息网

求将10进制换算成2,8,16进制的C++编程

答案:1  悬赏:0  手机版
解决时间 2021-07-30 11:52
求将10进制换算成2,8,16进制的C++编程
最佳答案

#include <iostream>


#include <stdio.h>


using namespace std;


void main()


{


long i,j,x;


int k;


char flag=1;


char bia[33];


strcpy(bia,"");


cin>>x;


if (x<0) flag=-1;


cout<<endl;


i=0;j=flag*x;


//if (flag) {bia[0]='-';i=1;}


do


{


bia[i++]=(j & 1)+'0'; j>>=1;


}while (j!=0);


if (flag==-1){bia[i++]='-';}


bia[i]='\0';strrev(bia);


cout<<bia<<endl;


printf("\o\n\x\n",x,x);


}



实际上后面转8进制和16进制可以直接输出,但如果要真实转换的话,可以用如下代码:


转8进制:


i=0;j=flag*x;


//if (flag) {ocx[0]='-';i=1;}


do


{


ocx[i++]=(j & 7)+'0'; j>>=3;


}while (j!=0);


if (flag==-1){ocx[i++]='-';}


ocx[i]='\0';strrev(ocx);



char st[17]="0123456789ABCDEF";


i=0;j=flag*x;


//if (flag) {hex[0]='-';i=1;}


do


{


hex[i++]=st[j & 15]; j>>=4;


}while (j!=0);


if (flag==-1){hex[i++]='-';}


hex[i]='\0';strrev(hex);



应该可以。。。。代码可能语法不太好,改一改就能用。

我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
守护甜心106集的 地址、要中文字幕
求炫舞名字,要英文+落 字 还有符号 组成的
请问我的QQ农场包裹打不开了怎么办?(有朋友
收藏夹里的网页没有了怎么办?
地下城里的物价会不会出现大幅度跌涨???
芦淞区株洲知蜂堂(人民中路)地址在什么地方,
延安哪里有大型养猪场
如果两个相爱的人分开了,时间能让他们的淡忘
丝路永雄怎么点亮图标?
战国-秦国 公孙虔 怎么死的?
为什么骗子越来越多?
武林外传我想100级涅馨可是90级就把任务都做
怎么能查到近期加过的好友?
梦 破灭了 我 爱 停不下来 永远 的繁体字是什
巴彦县哈尔滨天天旅馆(龙江路)地址在哪里啊
推荐资讯
单项《会计基础》
QQ农场火龙果,甘蔗,薰衣草每一季度的时间
死亡地带第一季开头歌曲叫什么
宝宝的嗓子哑了怎么办?
梁园区商丘兰州拉面哪位知道具体地址啊
我女朋友感冒了,可是,她不吃饭,也不吃药,
N78怎么在电脑上怎么看C盘
你认为最好听的老歌是哪一首?
长清区旧村改造规划表
我经常会尽我所能去帮助那些需要帮助的人,并
什么是缘,什么是爱?
湘阴县岳阳芙蓉餐馆这个地址怎么能查询到,着
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?