#2051:Bitset(进制转化)
Problem Description
Give you a number on base ten,you should output it on base two.(0 < n < 1000)
Input
For each case there is a postive number n on base ten, end of file.
Output
For each case output a number on base two.
Sample Input
1 2 3
Sample Output
1 10 11
完整代码:三种写法
//递归法
#include<stdio.h>
void Bit(int n) {
if (n) {
Bit(n >> 1);
printf("%d", n & 1);
}
}
int main() {
int n;
while (scanf_s("%d", &n) != EOF) {
Bit(n);
putchar('\n');
}
return 0;
}
利用itoa(i ,num ,10 )函数
/*
i ---- 需要转换成字符串的数字
num ---- 转换后保存字符串的变量
10 ---- 转换数字的基数(即进制)。10就是说按10进制转换数字。还可以是2,8,16等等你喜欢的进制类型
返回值:指向num这个字符串的指针
*/
#include<stdio.h>
#include<stdlib.h>
int main() {
int n;
while (scanf("%d", &n) != EOF) {
char str[4000];
itoa(n, str, 2);
printf("%s\n", str);
}
return 0;
}
正常写法(雾
#include<stdio.h>
int main()
{
int i,j,k,l;
__int64 m[100];
while(scanf("%d",&i)!=EOF)
{
k=i;
for(j=0;j<100;j++)
{
m[j]=k%2;
k=k/2;
if(k==0) break;
}
for( ;j>=0;j--)
printf("%I64d",m[j]);
printf("\n");
}
return 0;
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
· 分享4款.NET开源、免费、实用的商城系统
· Obsidian + DeepSeek:免费 AI 助力你的知识管理,让你的笔记飞起来!
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 全程不用写代码,我用AI程序员写了一个飞机大战