用C语言编程打印十进制数1到256的二进制、八进制和十六进制数值表

如题所述

以下程序在TURBOC上调试通过:

#include <stdio.h>
#include <limits.h>
void bit_print(int a)
{
int i;
int n;
unsigned long int mask;
n=sizeof(a)*CHAR_BIT;
mask=0x8000;
for (i=1; i<=n; ++i) {
putchar(((a&mask)==0)?'0':'1');
mask>>=1;
if (i%CHAR_BIT==0&&i<n) {
putchar(' ');
}
}
}
int main(void)
{
int i;
for (i=1; i<=256; i++) {
printf("%d\t",i);
bit_print(i);
putchar('\t');
printf("%o\t%X\n",i,i);
}
return 0;
}

输出内容为:
1 00000000 00000001 1 1
2 00000000 00000010 2 2
3 00000000 00000011 3 3
4 00000000 00000100 4 4
5 00000000 00000101 5 5
6 00000000 00000110 6 6
7 00000000 00000111 7 7
8 00000000 00001000 10 8
9 00000000 00001001 11 9
10 00000000 00001010 12 A
11 00000000 00001011 13 B
12 00000000 00001100 14 C
13 00000000 00001101 15 D
14 00000000 00001110 16 E
15 00000000 00001111 17 F
16 00000000 00010000 20 10
17 00000000 00010001 21 11
18 00000000 00010010 22 12
19 00000000 00010011 23 13
20 00000000 00010100 24 14
21 00000000 00010101 25 15
22 00000000 00010110 26 16
23 00000000 00010111 27 17
24 00000000 00011000 30 18
25 00000000 00011001 31 19
26 00000000 00011010 32 1A
27 00000000 00011011 33 1B
28 00000000 00011100 34 1C
…………
208 00000000 11010000 320 D0
209 00000000 11010001 321 D1
210 00000000 11010010 322 D2
211 00000000 11010011 323 D3
212 00000000 11010100 324 D4
213 00000000 11010101 325 D5
214 00000000 11010110 326 D6
215 00000000 11010111 327 D7
216 00000000 11011000 330 D8
217 00000000 11011001 331 D9
218 00000000 11011010 332 DA
219 00000000 11011011 333 DB
220 00000000 11011100 334 DC
221 00000000 11011101 335 DD
222 00000000 11011110 336 DE
223 00000000 11011111 337 DF
224 00000000 11100000 340 E0
225 00000000 11100001 341 E1
226 00000000 11100010 342 E2
227 00000000 11100011 343 E3
228 00000000 11100100 344 E4
229 00000000 11100101 345 E5
230 00000000 11100110 346 E6
231 00000000 11100111 347 E7
232 00000000 11101000 350 E8
233 00000000 11101001 351 E9
234 00000000 11101010 352 EA
235 00000000 11101011 353 EB
236 00000000 11101100 354 EC
237 00000000 11101101 355 ED
238 00000000 11101110 356 EE
239 00000000 11101111 357 EF
240 00000000 11110000 360 F0
241 00000000 11110001 361 F1
242 00000000 11110010 362 F2
243 00000000 11110011 363 F3
244 00000000 11110100 364 F4
245 00000000 11110101 365 F5
246 00000000 11110110 366 F6
247 00000000 11110111 367 F7
248 00000000 11111000 370 F8
249 00000000 11111001 371 F9
250 00000000 11111010 372 FA
251 00000000 11111011 373 FB
252 00000000 11111100 374 FC
253 00000000 11111101 375 FD
254 00000000 11111110 376 FE
255 00000000 11111111 377 FF
256 00000001 00000000 400 100
温馨提示:答案为网友推荐,仅供参考
相似回答