C程序 ,别来其他的 谢谢
输入:10 2 表示 输出2进制
输入:10 8 表示输出8进制
输入:10 16 表示输出16 进制
10代表10进制的任意数
仅仅是输出而已,不是进制转换。
C语言,输出八、16进制形式,都有格式符。
输出2进制,需要按照位,来输出。
下列程序, 即可达到不同进制的输出要求。
#include <stdio.h>
void main(void)
{
unsigned char xxx = 0, i;
printf("输入一个十进制数字(0~15): ");
scanf("%d", &xxx);
printf("\n十进制形式: %d. ", xxx);
printf("\n二进制形式: ");
for (i = 0; i < 4; i++)
if (xxx & (1 << (3 - i))) printf("1");
else printf("0");
printf(".");
printf("\n八进制形式: %02o. ", xxx);
printf("\n16进制形式: %02X. ", xxx);
// getch();
}
在VC中运行的画面如下:
追问怪我没把问题描清楚。。。
其实还是转换,就是输入:10 2 表示输入10进制和2进制转换
输入:10 8 表示输入10进制和8进制转换
输入:10 16表示输入10进制和8进制转换
而不是像你这样运行的结果。
例如我输入 12 2 结果输出 1100就完了,不是把8进制和16进制都输出来。
跑不起来