二进制
描述
给定一个十进制的正整数n(0 < n < 1000),把这个十进制数转化为二进制数。
输入
有多组测试数据,每组测试数据输入只有一个正整数n。处理到文件结束(EOF)。
输出
对每组测试数,在单独的一行中输出对应的二进制数。
输入样例 1
1 2 3
输出样例 1
1 10 11
提示
HINT 时间限制:200ms 内存限制:64MB
#include <cstdio>
void printBinary(int n) {
// 特殊处理n为0的情况
if (n == 0) {
printf("0\n");
return;
}
int binary[32]; // 存储转换后的二进制数
int index = 0;
// 将十进制转换为二进制
while (n > 0) {
binary[index++] = n % 2;
n /= 2;
}
// 逆序输出二进制数
for (int i = index - 1; i >= 0; i--) {
printf("%d", binary[i]);
}
printf("\n");
}
int main() {
int n;
// 通过 while 循环处理多组输入,直到文件结束(EOF)
while (scanf("%d", &n) != EOF) {
printBinary(n);
}
return 0;
}
6万+

被折叠的 条评论
为什么被折叠?



