d471
輸入說明 :
每行一個數字 n ( 0 < n < 15 )
代表 n 個bit
輸出說明 :
請參考範例輸出
每個n,可以表達的數字有2的n次方個
從0~2的n次方 把每個數從10進位轉成2進位,印出來
#include<stdio.h>
#include<math.h>
void Transdigit(int[],int);
void PrintDigit(int [],int);
int main()
{
int i,limit,n;
while(scanf("%d",&n)!=EOF)
{
limit=pow((double)2,(double)n);
for(i=0;i<limit;i++)
{
int array[15]={0};
Transdigit(array,i);
PrintDigit(array,n);
printf("\n");
} printf("\n");
}
return 0;
}
void Transdigit(int array[15],int number)
{
int k=0;
while(number)
{
array[k]=number%2;
number/=2;
k++;
}
}
void PrintDigit(int array[],int n)
{
int j;
for(j=n-1;j>=0;j--)
{
printf("%d",array[j]);
}
}