これが混乱している場合は申し訳ありません....これまでのところ、10進数を2進数に変換しています。これを行っている間、私はバイナリ表現の数字をint配列に格納します。
例:番号4の場合(これは以下のdec2binで行われます)
temp[0] = 1
temp[1] = 0
temp[2] = 0
この配列を、複数の「temp」配列を含む別の配列(BinaryArrayなど)に格納したいと思います。
BinaryArrayでmainを宣言し、dec2binに渡して、現在の一時配列のコピーを保存したいと思います。次に、次の番号に移動します。
ポインタとこれに必要のないものを理解するのに問題があります。誰かがmainで必要な配列を宣言する方法と、dec2binからそれに追加する方法を手伝ってくれるなら。
ありがとう!主要:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main()
{
void dec2bin(int term, int size);
int size, mincount;
int * ptr;
int x;
x=0;
scanf("%d %d", &size, &mincount);
printf("Variables: %d\n", size);
printf("Count of minterms: %d\n", mincount);
int input[mincount+1];
while(x < mincount){
scanf("%d", &input[x]);
x++;
}
x = 0;
while(x < mincount){
dec2bin(input[x], size);
Dec2bin:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define SIZE 32
void
dec2bin(int term,int size){
int i, j, temp[size], remain, quotient;
quotient = term;
i = size-1;
// set all temp to 0
for(j=size-1;j>=0; j--){
temp[j] = 0;
}
//change to binary
while(quotient != 0){
remain = quotient % 2;
quotient/=2;
if(remain != 0){
temp[i] = 1;
} else {
temp[i] = 0;
}
i--;
}
//print array
for(i=0; i<size; i++)
printf("%d", temp[i]);
printf("\n");
}