请教十进制转化为二进制
一个十进制一维数组为{2,3,4,5,6,7,8,9},怎样把数组里的数依次转化为四位的二进制数,比如2变为0010,然后将得到的这些二进制的码,在放在一个数组b[32]中,请教高手!谢谢
#include <stdio.h> int main(void) { int a[8] = {2, 3, 4, 5, 6, 7, 8, 9}, b[32]; int i, j, k; for(i = 0; i < 8; i++) { k = 3; for(j = 0; j < 4; j++) { b[i * 4 + j] = (a[i] >> k--) & 1; } } for(i = 0; i < 32; i++) { if(i != 0 && i % 4 == 0) { puts(""); } printf("%d", b[i]); } return 0; }