c++二进制整数怎么写
3个回答
展开全部
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char** argv)
{
int n; printf ("输入 n:");
scanf ("%d", &n);
char binary_str[32];
itoa(n, binary_str, 2);
printf ("%d 的二进制为 %s\n", n, binary_str);
return 0;
}
C语言中进制转化的实现:
#include <stdio.h>
int exchange(int a)
{
if(a == 10){printf("A");return 0;}
if(a == 11){printf("B");return 0;}
if(a == 12){printf("C");return 0;}
if(a == 13){printf("D");return 0;}
if(a == 14){printf("E");return 0;}
if(a == 15){printf("F");return 0;}
printf("%d",a);
}
int main(int argc, char *argv[])
{
int x,y,i,j,a[110];
while(scanf("%d%d",&x,&y) == 2)//输入x,y,x为十进制数,y为要转换的进制
{
if(x < 0){printf("-"); x = -x;}//如果x小于零,转换成正数再计算,然后先把负号输出
if(x == 0){printf("0");return 0;}
for(i = 0;x != 0;i++)//一下为十进制转换成其他进制的基本规则
{
a[i] = x % y;
x = x / y;
}
i--;
if(y > 10)//如果要转换的进制大于十进制,要特别处理。
for(j = i;j >= 0;j--)
exchange(a[j]);
else for(j = i;j >= 0;j--)
printf("%d",a[j]);
printf("\n");
}
return 0;
}
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
在C++中,只有这三种标准表达式可以被所有编译器解析,二进制格式没有统一写法标准。
也就是说,数值常量无法用二进制表示。
也就是说,数值常量无法用二进制表示。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询