将10进制数转化为16进制数和8进制数的c语言代码?

长整数的处理。假定用一个整型数组表示一个长整数,数组的每个元素存储长整数的一位数字,则实际的长整数m表示为:(C)m=a[k]×10k-1+a[k-1]×10k-2+….... 长整数的处理。假定用一个整型数组表示一个长整数,数组的每个元素存储长整数的一位数字,则实际的长整数m表示为:(C)
m=a[k]×10k-1+a[k-1]×10k-2+….+a[2]×10+a[1]
对于上题描述的10进制长整数,要求:(C)
(a) 转换为16进制数输出;
(b) 转换成8进制数输出。
必须要c,不要c++
展开
 我来答
200841919213
推荐于2017-09-17
知道答主
回答量:8
采纳率:0%
帮助的人:4.6万
展开全部
#include <iostream>
using namespace std;
int a[100];int b[100] ;
void func(int x)//x此处是10进制数,转化成十六进制

{
int i=0; //i 为一个局部变量,在func函数中有用
while(x!=0)
{
a[i]=x%16;
x/=16;
i++;
}
for(int k=i-1;k>=0;k--)
{
cout<<a[k];
}
cout<<endl;
}
void func2(int y)
{
int i=0; // i 为一个局部变量在func2中有用
while(y!=0)
{
a[i]=y%8;
y/=8;
i++;
}
for(int k=i-1;k>=0;k--)
{
cout<<b[k];
}
cout<<endl;
}

void main()
{
int n;
cout<<"输入10进制数:"<<endl;
cin>>n;
cout<<"转化成十六进制:"<<endl;
cout<<"转化成八进制:"<<endl;
func(n);
func2(n)
百度网友8541e4a
推荐于2017-10-01 · TA获得超过5333个赞
知道大有可为答主
回答量:4696
采纳率:0%
帮助的人:2035万
展开全部
#include <stdio.h>
int main()
{
int a;
printf("输入一个十进制数");
scanf("%d",&a);
printf("十六进制是:%x\n",a); //c语言中%d是十进制,%x是16进制
printf("八进制是:%o\n",a); //%o是八进制,%b是2进制
return 0;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式