C tablice char

0

mam problem z wypisaniem wymieszanych tablic AxB. osobno śmiga wszystko. razem jakieś kszaki mi wyskakują.

#include <stdio.h>
#include <stdlib.h>
#include <conio.h>

int main(int argc, char *argv[])
{ //iloczyn kartezjański 2 zbiorów A i B
  char A[100];
  char B[100];
  int i=0,l=0; // zmienna l jest licznikiem ile jest elementów najdłuższej tablicy. 
  int j=0;
  
  printf("ciag zbioru A\n");
  
  do{
        A[i]=getche();
        i++; 
        l++;
    }
    while(A[i-1]!='\r'&&i<100);
    
    printf("\n");
    
    printf("ciag zbioru B\n");
  i=0;
  
  do{
        B[i]=getche();
        i++;
        if(i>l)l++;
    }
    while(B[i-1]!='\r'&&i<100);
    
    printf("\n");
        
    for(i=0;i<l+1;i++){
        for(j=0;j<l+1;j++){
            printf("%c%c ",A[i],B[j]);
            }
        }
        
        
        printf("\n");
        
    
        
  
  system("PAUSE");	
  return 0;
}


 
0

poprawione

#include <stdio.h>
#include <stdlib.h>
#include <conio.h>

int main(int argc, char *argv[])
{ //iloczyn kartezjański 2 zbiorów A i B
  char A[100];
  char B[100];
  int i=0,a=0,b=0;
  int j=0;
  
  printf("ciag zbioru A\n");
  
  do{
        A[i]=getche();
        i++; 
        a++;
    }
    while(A[i-1]!='\r'&&i<100);
    
    printf("\n");
    
    printf("ciag zbioru B\n");
  i=0;
  
  do{
        B[i]=getche();
        i++;
        b++;
        
    }
    while(B[i-1]!='\r'&&i<100);
    
    printf("\n");
        
    for(i=0;i<a-1;i++){
        for(j=0;j<b-1;j++){
            printf(":%d%d: ",i,j);
            printf("%c%c\n",A[i],B[j]);
            }
        }
        
        
        printf("\n");
        
    
        
  
  system("PAUSE");	
  return 0;
}

0

Możesz sprecyzować, jakie "krzaki"? Co ma być wynikiem działania programu?

1 użytkowników online, w tym zalogowanych: 0, gości: 1