📄 生成洗序表.cpp
字号:
//整体替换main函数
void tables_generater()
{
int i, j,l,k,n,m,mr,nn;
for(i=2;i<=10;i++)
{
n = 1 << i;
mr = 0;
j = 1;
k = 0;
nn = n - 1;
printf("%s%d%s\n","short r_Table",n,"[]={");
for (m=1; m<=nn; ++m)
{
l = n;
do
{
l >>= 1;
} while (mr+l > nn);
//判断现在计算出来的mr是否和前面的m重复
mr = (mr & (l-1)) + l;
if (mr <= m)
continue;
if(m==1)
{ printf("%d%s%d",m,",",mr);k++;}
else
{ printf("%s%d%s%d",",",m,",",mr);k++;}
//控制输出格式
j++;
if(j % 10 == 0)
{ printf("\n");j=1;}
}
//输出矩阵的大小2K
printf("%s\n%d\n","};",2*k);
}
}
void main()
{
tables_generater();
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -