十进制转化成二进制二进制倒序后在转化成十进制
输入一个十进制数,将输入的十进制数转化成二进制输出。同时将转化后的二进制如110倒序成011后输出,再将倒序后的二进制转化成十进制输出
#include<stdio.h>
#include<math.h>
#include<string.h>
/*int input(int m)
{
printf(">>%s输入一个二进制数:\n",m?"请":"输入有误,请重新");
scanf("%s",a);
return strlen(a);
}*/
#define N 32
int input(int);
char q[N];
int f=0;
char c[32];
void main()
{
int a=0,i,k,n=0,m=0;
double decimal=0;
char b[32];
for(i=0;i<32;i++)
{
b[i]=0;
}
printf("请输入一个十进制数:\n");
scanf("%d",&i);
while(i!=0) //while循环用来将输入的十进制转化成二进制
{
k=i%2;
b[a++]=k;
f++;
i=i/2;
}
printf("转为二进制数为:\n");
while(a>0) //while循环用来输出二进制数
{
printf("%d",b[--a]);
}
printf("\n");
printf("倒序后二进制数为:\n");
for( int d=0;d<f;d++) //for循环用来将二进制倒序后输出
{
c[d]=b[d]; //将二进制数组存到另一个数组中,用来将倒序后的二进制转化成十进制
printf("%d",b[d]);
n++; //记录有二进制位的数组的长度;
decimal=decimal*2+b[d]-'0';
}
printf("\n");
printf("请输入倒序后的二进制数:\n");
int num=0;
char q[32];
scanf("%s",q);
for(i=0;q[i]!=NULL;i++)
{
if(q[i]!='0' && q[i]!='1')
{
printf("输入错误\n");
}
else
{
num=num*2+q[i]-'0';
}
}
printf("倒序后的二进制转换成的十进制数是:");
printf("%d\n",num);
printf("\n");
}
你可能喜欢
- 十进制转换
- 进制转换方法
- 十进制转二进制
- 十进制十六进制转换
- 进制换算
- 复习课件
- 使用技巧
- 计算机二进制
- 实验二 十进制转换为八进制等 还有队列7页
- 二进制十进制转换2页
- 十进制转换实验报告7页
- 二进制与十进制转换1页
- 十进制转换2页
- 二进制与十进制的转换2页
- java 进制转换,二进制 十进制 十六进制 正数 负数的进制等等!4页
- 二进制、八进制、十进制、十六进制之间转换4页
- 二进制、八进制、十进制与十六进制转换计算精华9页
- 数据结构C语言将一个十进制数转换成另外一个P进制数字符串(可以是二进制到十六进制)2页
- 数制转换 二进制 八进制 十进制 十六进制之间的数制转换3页
- C++中十六进制转换为十进制1页
- 反比例函数复习课件比例函数复习课件6页
- 溶液复习课件36页
- 地球的运动-复习课件20页
- 地理复习课件118页
- 拼音总复习课件19页
- 七年级地理上复习课件117页
- Excel高级使用技巧15页
- win7鲜为人知的使用技巧6页
- Excle使用技巧18页
- Word文档使用技巧大全52页
- CSS使用技巧13页
- excel2007使用技巧36页


