C++进制转换(十进制转二进制、八进制、随意进制)

C++进制转换(十进制转二进制、八进制、随意进制)

大家好,又见面了,我是全栈君,今天给大家准备了Idea注册码。

C++进制转换(十进制转二进制、八进制、随意进制)此处内容已经被作者隐藏,请输入验证码查看内容
验证码:
请关注本站微信公众号,回复“”,获取验证码。在微信里搜索“”或者“”或者微信扫描右侧二维码都可以关注本站微信公众号。

十进制转二进制:

//十进制转二进制
#include<iostream>
using namespace std;

void printbinary(const unsigned int val)
{
	for(int i = 16; i >= 0; i--)
	{
		if(val & (1 << i))
			cout << "1";
		else
			cout << "0";
	}
}

int main()
{
	printbinary(1024);
	return 0;
}

十进制转八进制

//十进制转八进制
#include <iostream>
#include <vector>
using namespace std;

int main()
{
	cout<<"input a number:"<<endl;
	int d;
	vector<int> vec;

	cin>>d;
	while (d)
	{
		vec.push_back(d%8);
		d=d/8;
	}

	cout<<"the result is:"<<endl;
	for(vector<int>::iterator ip=vec.end()-1;ip>=vec.begin();)
	{
		cout<<*ip--;
	}
	cout<<endl;
	
	return 0;
}

十进制转随意进制:

//十进制转换为随意进制的源代码
#include <iostream>
using namespace std;

int main()
{
	long n;
	int p,c,m=0,s[100];
	cout<<"输入要转换的数字:"<<endl;
	cin>>n;
	cout<<"输入要转换的进制:"<<endl;
	cin>>p;

	cout<<"("<<n<<")10="<<"(";

	while (n!=0)//数制转换,结果存入数组s[m]
	{
		c=n%p;
		n=n/p;
		m++;s[m]=c;   //将余数按顺序存入数组s[m]中
	}

	for(int k=m;k>=1;k--)//输出转换后的序列
	{
		if(s[k]>=10) //若为十六进制等则输出相相应的字母
			cout<<(char)(s[k]+55);
		else         //否则直接输出数字
			cout<<s[k];
	}

	cout<<")"<<p<<endl;

	return 0;
}

通过库函数实现八进制、十六进制输出:

#include <iostream>
using namespace std;

int main()
{
	int test=64;
	cout<<"DEC:"<<test<<endl;
	cout<<"OCT:"<<oct<<test<<endl;//八进制
	cout<<"HEX:"<<hex<<test<<endl;//十六进制

	return 0;
}

C++进制转换(十进制转二进制、八进制、随意进制)










版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/118028.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • javascript 页面后退并刷新

    javascript 页面后退并刷新javascript做页面后退常使用的方法是window.history.back();这样确实可以做到后退的功能,但是项目中,常常并不只是后退就行完成需求,往往需要在后退的同时,刷新后退的页面信息,比如后退到首页同时刷新首页的最新数据,这样的需求通过上面这种方法就没法满足了,为了实现这个需求,我们需要使用到document.referrer这个方法可以取到上一个页面的具体路径

  • SSDP协议_Smb协议

    SSDP协议_Smb协议SSDP就是简单服务发现协议(SimpleServiceDiscoveryProtocol)是一种应用层协议,它是构成通用即插即用(也就是UPnP,UPnP是各种各样的智能设备、无线设备和个人电脑等实现遍布全球的对等网络连接的结构)技术的核心协议之一。    简单服务发现协议提供了在局部网络里面发现设备的机制。控制点(也就是接受服务的客户端)能够直接通过使用简单服务发现协议,根据自己的需要查询…

    2022年10月11日
  • springMVC3学习(六)–SimpleFormController

    springMVC3学习(六)–SimpleFormController

  • 编写 if 时不带 else,你的代码会更好!

    点击上方“全栈程序员社区”,星标公众号 重磅干货,第一时间送达 来源:翻译自:Nicklas Millard的文章《Better Software Without If-Else》…

  • 查看linux执行的命令记录_history命令详解

    查看linux执行的命令记录_history命令详解前言我们每次敲打linux命令的时候,有时候想用之前用过的命令,一般情况下,我们都会按↑↓箭头来寻找历史的命令记录,那如果我想用1天前执行的某条命令,难道还要按↑100次?显示这样是不现实的,我们可

  • php开发环境的配置过程_mac配置java环境

    php开发环境的配置过程_mac配置java环境VsCode系列:VSCode配置Python开发环境!今天博主跟大家聊一聊如何使用VsCode系列:VSCode配置Python开发环境!不喜勿喷,如有建议欢迎补充、讨论!关于安装和汉化可以观看博主的这篇文章《下载安装及汉化》以及Python系列:windows10配置Python3.0开发环境!,安装完毕重启VsCode!Comeon!首先请大家确定VsCode的安装以及Pyt…

    2022年10月26日

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号