
2条回答 默认 最新
技术专家团-小桥流水 2022-01-05 11:16关注从0到2^5-1遍历,把数字转成对应的二进制显示就可以了。

代码如下:
#include <stdio.h> //10进制转radius进制 void trans(int n,int radius,char buf[]) { int i = 0; int t,j; char ch; while(n) { t = n%radius; if(t >= 10) buf[i] = 'A' + t-10; else buf[i] = '0' + t; i++; n/=radius; } buf[i] = 0; //逆序 for (j=0,t=i-1;j<t;j++,t--) { ch = buf[j]; buf[j] = buf[t]; buf[t] = ch; } } int main() { int i; char buf[8]={0}; for (i=0;i<32;i++) { trans(i,2,buf); printf("%05s\n",buf); } return 0; }评论 打赏 举报 编辑记录解决 1无用