No to nie wiem... O to Ci chodziło?
#include <stdio.h>
int main(void)
{
int tab1[5], tab2[5], tab3[5];
int tab[3][5];
int i=0, j=0;
for(i=0;i<3;i++){
for(j=0;j<5;j++){
if(i==0){
printf("Podaj tab1[%d]:", j);
scanf("%d", &tab1[j]);
tab[i][j] = tab1[j];
}
else if(i==1){
printf("Podaj tab2[%d]:", j);
scanf("%d", &tab2[j]);
tab[i][j] = tab2[j];
}
else if(i==2){
printf("Podaj tab3[%d]:", j);
scanf("%d", &tab3[j]);
tab[i][j] = tab3[j];
}
}
}
for(i=0;i<3;i++){
for(j=0;j<5;j++)
printf("%d ", tab[i][j]);
printf("\n");
}
return 0;
}
Chociaż... poniższe rozwiązanie jest szybsze, bo warunek sprawdzany jest tylko w pierwszym zagnieżdżeniu i każda zagnieżdżona pętla leci już bez jego sprawdzania:
#include <stdio.h>
int main(void)
{
int tab1[5], tab2[5], tab3[5];
int tab[3][5];
int i=0, j=0;
for(i=0;i<3;i++){
if(i==0){
for(j=0;j<5;j++){
printf("Podaj tab1[%d]:", j);
scanf("%d", &tab1[j]);
tab[i][j] = tab1[j];
}
}
else if(i==1){
for(j=0;j<5;j++){
printf("Podaj tab2[%d]:", j);
scanf("%d", &tab2[j]);
tab[i][j] = tab2[j];
}
}
else if(i==2){
for(j=0;j<5;j++){
printf("Podaj tab3[%d]:", j);
scanf("%d", &tab3[j]);
tab[i][j] = tab3[j];
}
}
}
for(i=0;i<3;i++){
for(j=0;j<5;j++)
printf("%d ", tab[i][j]);
printf("\n");
}
return 0;
}
Jeszcze za pomocą wskaźnika możesz:
#include <stdio.h>
int main(void)
{
int tab1[5], tab2[5], tab3[5];
int tab[3][5];
int i=0, j=0;
int *wsk=NULL;
for(i=0;i<3;i++){
if(i==0) wsk=tab1;
else if(i==1) wsk=tab2;
else if(i==2) wsk=tab3;
for(j=0;j<5;j++){
printf("Podaj tab[%d]:", j);
scanf("%d", &wsk[j]);
tab[i][j] = wsk[j];
}
}
for(i=0;i<3;i++){
for(j=0;j<5;j++)
printf("%d ", tab[i][j]);
printf("\n");
}
return 0;
}
Jak nie o to Ci chodziło to ja już nie wiem o co :)