/**
#include
#include <Windows.h>
using namespace std;
int main(void) {
int ret[32]; //收集变换的数据
int p; //二进制整数
int s; //变换的数据
cout << "请输入一个二进整数: ";
cin >> p;
if(p < 0) { //判断是否大于0
cout << "输入与错误,请输入一个大于零的整数!!!" << endl;
return 1;
}
s = 0;
while (p != 0) { //假设 p = 12
ret[s] = p % 2; //第一步取余 0 0 1 1
p = p / 2; //第二步除二 6 3 1 0
++s; //第三步 ret[s0] —> ret[s1] —> ret[s2] —> ret[s3]
}
for(--s; s>=0; --s) {
cout << ret[s]; //输出顺序 ret[s3] —> ret[s2] —> ret[s1] —> ret[s0]
}
cout << endl;
system("pause");
return 0;
}
/
/
*输入一个10进制的正整数,把它转换为2进制输出。
*
**/
#include
#include <Windows.h>
using namespace std;
int main(void) {
int j; //整数
int ret[32]; //存储转换数据
int i; //转换数据
cout << "请输入一个整数:";
cin >> j;
//判断输入是否正确
if(j < 0) {
cout << "输入错误,,请重新输入。。" << endl;
return 1;
}
//转换
i = 0;
while (j != 0) {
ret[i] = j % 2;
j = j / 2;
++i;
}
//输出
for(--i; i>=0; --i) {
cout << ret[i];
}
//换行
cout << endl;
system("pause");
return 0;
}