编译环境:WIN-TC version 1.9.1 通过
//*******************************************************************
//* 程 序 名: Change.cpp
//* 作 者: a13007788
//* 编制时间: 2006年3月29日 V1.0
//* 主要功能: 十进制转换为二进制
//*******************************************************************
#include "stdio.h"
#include "conio.h"
main()
{
int Num = 0; //存放输入的整数
int Top = 0;
int s[16] = {0}; //存放二进制的数组
printf("Now,please input anumber:");
scanf("%d",&Num);
printf("%dD is equal ",Num);
//如果输入的数为负数时,置标志位为1
if(Num < 0)
{
s[15] = 1;
Num = -Num; //换算为正整数
}
//在要转换的数不为0的情况下,开始转换
while((Num != 1) && (Num != 0))
{
s[Top] = Num % 2; //转换结果放入数组中
Num = (int)(Num / 2); //显式调用强制类型转换为int
Top++;
}
if(Num != 0)s[Top] = 1; //结果不为0,则第1位定为1
Top = 15;
//输出转换后的二进制数
while(Top != -1)
{
printf("%d",s[Top]);
Top--;
}
printf("B");
getch();
}
希望给些指导
[此贴子已经被作者于2006-4-8 12:17:40编辑过]