num = int(input()) # 输入十进制整数 print(bin(num)[2:], oct(num)[2:], hex(num)[2:].upper()) # 分别输出对应的二进制、八进制、十六进制数 其中,bin(num)返回num的二进制表示,oct(num)返回num的八进制表示,hex(num)返回num的十六进制表示,[2:]表示去除前面的0b、0o、0x前缀,upper()...
return 0; } 本题考查十进制的整数如何转换为二进制数,八进制数和十六进制数 ,c语言中二进制数,八进制数和十六进制数分别用%b %o %X %x来表示,本题考查输入不超过100的十进制整数,即用int就可满足范围,在一行内输出对应的二进制数,八进制数和十六进制数,以空格隔开。故需要加空格。
passwd = input('请输入一个整数:')number = int(passwd)print('十进制 -> 十六进制:%d -> 0x%...
include<stdio.h> void d2n(unsigned long d,int n){ if(d>=n){ d2n(d/n,n);} printf("%c","0123456789ABCDEF"[d%n]);} int main(){ long num;scanf("%0x", &num);d2n(num, 2);d2n(num, 8);d2n(num, 10);return 0;} ...
voidtrans10_2_8_16(char*p,longm,intbase) { intr; while(m>0) { r=m%base; if(r<10)*p=r+48; else*p=r+55; m=m/base; p++; } *p='\0'; } 2、形参采用数组 #include"stdio.h" #include"conio.h" #include"string.h"
voidtrans10_2_8_16(char*p,longm,intbase) { intr; while(m>0) { r=m%base; if(r<10)*p=r+48; else*p=r+55; m=m/base; p++; } *p='\0'; } 2、形参采用数组 #include"stdio.h" #include"conio.h" #include"string.h"
例如:十进位数:256转化成 二进制:11000 八进制:204.8 十六进制:409.6
可以输出的字符asc码 1--31h 0---30h一个个输出出来就可以了八进制的,从最后一位开始读,每3个二进制存成一个,将他变成对应的十进制,即 001-21,011-...3,110-6 ,100--4即4631最后的输出,将每个数字转成相应的可输出二进制,之后挨个输出出来,记得顺序4输出是第一个,但却是最后算出来的16进制的,从...
void d2n(unsigned long d, int n){ if(d>n)d2n(d/n,n);putchar("0123456789ABCDEF"[d%n]);} int main(){ unsigned long d;scanf("%lu",&d);printf("%lu(10)=",d);d2n(d,2);printf("(%d)\n",2);printf("%lu(10)=",d);d2n(d,8);printf("(%d)\n",8);printf(...