training2:位操作訓練
1. 題目:
請編寫乙個c函式
,該函式給出乙個位元組中被置為
1的位的個數。
#include typedef unsigned int uint;
uint count1(uint num)
}return count;
}int main()
2.題目:輸入乙個整數a,再輸入兩個整數p1、p2(p1 ,p2 < 32),輸出該整數的二進位制表示方法中從右端開始的p1到p2位。
#include typedef unsigned int uint;
void output(uint num, uint p1, uint p2)
for(i = 0; i < j; i++)
printf("\n");
}int main()
for(i = j - 1; i >= 0; i--)
printf("\n");
}int main()
for(i = 0; i < j; i++)
printf("\n");
}uint set_num(uint num, uint p, uint v)
else
return num;
}int main()
5.題目:輸入乙個32位的整數a,使用按位異或^運算,生成乙個新的32位整數b,使得該整數b的每一位等於原整數a中該位左右兩邊兩個bit位的異或結果。
#include void func(int num)
else
}temp = i;
while(temp)
sum = bit + sum;
}printf("change:%d\n", sum);
}int main()
6.題目:將任意十進位制轉化為十六進製制進行輸出。
#include char * to16(unsigned int num)
else
num = num >> 4;
}return str;
}int main()
Training2 位操作訓練
include void count1 int a printf 輸入的數共有 d位被置1 n count intmain include intchoosep1 p2 int a,int p1,int p2 printf 輸出結果為 n for n p1 n printf n return0 in...
位操作訓練
1 題目 請編寫乙個c函式,該函式給出乙個位元組中被置為1的位的個數 include int int2bin int num num num 1 return count int main 2 題目 輸入乙個整數a,再輸入兩個整數p1,p2 p1,p2 32 輸出該整數的二進位制表示方法中從右端開始...
位操作訓練
1 題目 請編寫乙個c函式,該函式給出乙個位元組中被置為1的位的個數 include int int2bin int num num num 1 return count int main 2 題目 輸入乙個整數a,再輸入兩個整數p1,p2 p1,p2 32 輸出該整數的二進位制表示方法中從右端開始...