文章
15
粉丝
142
获赞
26
访问
20.4k
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
int main(){
// 遍历 0 ~ 63 这 64 个整数
for(int i=0;i<=63;i++){
// 对于每个整数 i ,遍历其二进制表示中的 6 位(因为 2^6=64)
for(int j=5; j>=0; j--){
// 取出整数 i 的第 j 位二进制数值(从高位到低位)
int bit = (i >> j) & 1;
// 输出该二进制数值
cout << bit;
}
cout << endl; // 换行,使输出更美观
}
return 0;
}
这段代码的功能是输出0到63这64个整数的二进制表示。具体来说,首先通过外层循环遍历每一个需要转换的整数 i,然后通过内层循环遍历该整数的二进制表示的每一位(共6位),并使用移位运算符和与运算符(&)取出该位二进制数值,最后将所有二进制数值拼接起来输出即可。
需要注意的是,这里将内层循环从0到5的顺序反过来,是因为我们想要的输出顺序是从高位到低位,而二进制是从低位到高位的,因此需要从高位开始循环。
登录后发布评论