㈠ 编程实现:输入一个十进制数,转换成对应的二进制数、八进制数和十六进制数并输出。
1、#include<iostream>
using namespace std;
int main()
{
int a,b,c,d;
cout<<"请输入待转换的数:";
cin>>a;
//二进制分别计算每一位
if(a==0)cout<<a;
b=a;c=0;d=1;
while(b!=0)
{
c+=(b%2)*d;//依次把b除以2的余数写在c的对应位置上
b=b/2;
d*=10;
}
cout<<c<<endl;
//八进制和十六进制使用格式化输出即可,oct表示八进制,hex表示十六进制
cout<<oct<<a<<endl;
cout<<hex<<a<<endl;
}
2、main()
{ int a,i;char x[16];
float b;
scanf("%d",&a);
printf("八进制为%o,十六进制为%x",a,a);
for(i=0;i<=15;i++)
{b=a/2.0;
a=a/2;
if(b==(float)a) x[15-i]='0';
else x[15-i]='1';
}
printf("二进制为%s",x);
}
(1)编程题怎么把一个数转化成2进制扩展阅读:
编译方式下,首先通过一个对应于所用程序设计语言的编译程序对源程序进行处理,经过对源程序的词法分析、语法分析、语意分析、代码生成和代码优化等阶段将所处理的源程序转换为用二进制代码表示的目标程序,然后通过连接程序处理将程序中所用的函数调用、系统功能调用等嵌入到目标程序中,构成一个可以连续执行的二进制执行文件。调用这个执行文件就可以实现程序员在对应源程序文件中所指定的相应功能。
㈡ C语言编程题将十进制M转换成二进制
#include <stdio.h>
void main()
{
int a[32]={0},i;
long num;
i=0;
printf("请输入一个十进制数:");
scanf("%ld",&num);
printf("%ld的二进制数为:",num);
while(num>=1)
{
a[i]=num%2;
num=num/2;
i++;
}
for(i=i-1;i>=0;i--)
{
printf("%d",a[i]);
}
printf("\n");
}
这是我写的程序 要转八进制只需把这a[i]=num%2;num=num/2;两句改为a[i]=num%8;
num=num/8;