十进制转二进制代码输出结果跟实际不符不知道哪里错了
#include<stdio.h>void change_to_binary(int num)//转换函数
{
int temp_binary = num%2;//除2取余
num=num/2;//用除以2得到的商继续除以2
if(num)
change_to_binary(num);//逆序输出每一位余数,即转换后的二进制数
printf("%d",temp_binary);
}
int main()
{
int DecimalNum = 0;//定义一个整型变量存放十进制度数
printf("请输入十进制数:");
scanf("%d.&DecimalNum");//输入一个十进制数
printf("二进制是:");
change_to_binary(DecimalNum);//调用转换函数将其转为二进制数
printf("\n");
return 0;
}
大佬们帮忙看看哪里错了 #include <stdio.h>
void binary(int num){
if(!num) return;
binary(num/2);
printf("%d", num%2);
}
int main(){
binary(8);
return 0;
}1000 傻眼貓咪 发表于 2022-3-21 12:52
binary(num/2);//换成binary(num>>1);
printf("%d", num%2);//换成printf("%d", num&1); jhq999 发表于 2022-3-21 13:25
我也想,但担心楼主不明白,所以选择用楼主的代码方式呈现
页:
[1]