配列A,B,Cがあり、その要素はそれぞれ
A{2,3}
B{1}
C{4,5}
という情報が与えられている時、
新たな配列X[][]にA,B,Cの要素を一つづつ使った配列として格納するには、どのようなプログラムを書けば良いですか?C言語で書こうと思っています。
上記の場合には、作りたい配列Xは
X[][]=
{{2,1,4},
{2,1,5},
{3,1,4},
{3,1,5}}
という配列です。行数が組み合わせ分あり、列はA,B,Cに対応して3列となっています。
よろしくお願いします。
配列に格納するプログラム
Re:配列に格納するプログラム
A,B,C,Xをint型と仮定して書きました。
浅学非才の身でありますので、ひどく冗長なコードになってしまいまし、
少しでも参考になれば幸いです。
//以下コード
#include <stdio.h>
int main(void){
int A[2] = {2,3};
int B[1] = {1};
int C[2] = {4,5};
int X[4][3] = {0};
int nowXLine=0; //現在の配列Xの行数
int a,b,c;
for(a = 0;a < 2;a++){
for(b = 0;b < 1;b++){
for(c = 0;c < 2;c++){
X[nowXLine][0] = A[a];
X[nowXLine][1] = B;
X[nowXLine][2] = C[c];
nowXLine++;
}
}
}
for(a = 0;a < nowXLine;a++){
printf("%d,%d,%d\n",X[a][0],X[a][1],X[a][2]);
}
return 0;
}
浅学非才の身でありますので、ひどく冗長なコードになってしまいまし、
少しでも参考になれば幸いです。
//以下コード
#include <stdio.h>
int main(void){
int A[2] = {2,3};
int B[1] = {1};
int C[2] = {4,5};
int X[4][3] = {0};
int nowXLine=0; //現在の配列Xの行数
int a,b,c;
for(a = 0;a < 2;a++){
for(b = 0;b < 1;b++){
for(c = 0;c < 2;c++){
X[nowXLine][0] = A[a];
X[nowXLine][1] = B;
X[nowXLine][2] = C[c];
nowXLine++;
}
}
}
for(a = 0;a < nowXLine;a++){
printf("%d,%d,%d\n",X[a][0],X[a][1],X[a][2]);
}
return 0;
}