對不起,如果這很混亂....到目前爲止,我將十進制數轉換爲二進制數。在做這件事時,我將二進制表示的數字存儲到一個int數組中。C通過指針將多個int數組存儲到另一個數組中
EX:對於數字4(這在下面做DEC2BIN)
temp[0] = 1
temp[1] = 0
temp[2] = 0
我想這個數組存儲到另一個陣列(比如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");
}
嗨編輯請,主要貼兩次:)\ –
當。剛離開房子。將不得不添加正確的東西在幾個 – Scape
那麼,據我可以去現在沒有完整的代碼:爲什麼不聲明/存儲爲int **?直觀地說,就是一個int數組的數組。預先聲明尺寸可能不可能,如果你有不同大小的數字,導致mallocs,導致巨大的頭痛,因爲你做了一個陣列大小的假設,但... –