对于长度为5位的一个01串,每一位都可能是0或1,一共有32种可能。它们的前几个是:
00000
00001
00010
00011
00100
请按从小到大的顺序输出这32种01串。
输出格式
输出32行,按从小到大的顺序每行一个长度为5的01串。
样例输出
00000
00001
00010
00011
<以下部分省略>
①暴力输出法
#includeint main(){ char *arr[]={"00000","00001","00010","00011","00100", "00101","00110","00111","01000","01001","01010","01011", "01100","01101","01110","01111","10000","10001","10010", "10011","10100","10101","10110","10111","11000","11001", "11010","11011","11100","11101","11110","11111"}; int i; for(i=0;i<32;i++){ printf("%sn",arr[i]); } return 0; }
直接用char arr[]会报错,出现too many initializers。
②利用五层循环
#includeint main(){ int a,b,c,d,e; for(a=0;a<2;a++){ for(b=0;b<2;b++){ for(c=0;c<2;c++){ for(d=0;d<2;d++){ for(e=0;e<2;e++){ printf("%d%d%d%d%dn",a,b,c,d,e); } } } } } return 0; }



