- #include <stdio.h>
- int main(int argc, char *argv[])
- {
- int num[] = {7,2,4,6,1,9,8,5,4,3,15,12,11,13,10,0};
- char a[2];
- int i, j, tmp;
- /*Mark*/
- for (i = 0; i < sizeof(num) / 4; i++) {
- a[num[i] /8] |= (1 << num[i] % 8);
- }
- /*Output*/
- for (i = 0; i < sizeof(a); i++) {
- for (j = 0; j < 8; j++) {
- tmp = (1 << j) & a[i];
- if (tmp != 0) {
- printf("%d\\n", i * 8 + j);
- }
- }
- }
- return 0;
- }
- //该片段来自于http://www.codesnippet.cn/detail/1811201411007.html
来源: http://www.codesnippet.cn/detail/1811201411007.html