행렬의 곱하는 문제 코딩해봤는데...에러좀 봐주세요!
콘라드
질문 제목 :
함수의 곱 구하는문제인데요..
곱셈할때 1부터 100까지 랜덤함수로 받아야되는데
그부분을 잘 모르겠어요
형광펜칠한부분 잘 모르겠음 ㅜㅜㅜㅜ
고쳐주시면 안될까요?
자꾸 값이 0으로만 나와여질문 내용 :
#includestdio.h
#include stdlib.h
#include time.h
main()
{
int i,j,k,q,w,n,e;
int **a,**b,**c;
//i,k,j값 입력
printf(a[i][k] * b[n][j]행렬의 곱 구하기\n);
//printf(i값 입력: );
scanf(%d,&i);
scanf(%d,&k);
scanf(%d,&n);
scanf(%d,&j); //a,b,c 배열 크기 지정
a=(int**)calloc(i,sizeof(int));
b=(int**)calloc(k,sizeof(int));
c=(int**)calloc(i,sizeof(int));
//i,k,j의 값을 초기화 시킬것이므로 다른변수에 값 저장
q=i;
w=k;
e=j;
//a,b,c각 배열의 열의 크기 지정
for( i = 0; i q; i++ )
a[i] = ( int* )calloc(k, sizeof( int ) );
for( k = 0; k w; k++ )
b[k] = ( int* )calloc(j, sizeof( int ) );
for( i = 0; i q; i++ )
c[i] = ( int* )calloc(j, sizeof( int ) );
//a행렬 값 입력
for(i=0;iq;i++)
{ for(k=0;kw;k++)
{
w=rand()%101;
}
printf(\n);
}
//b행렬 값 입력
for(k=0;kw;k++) { for(j=0;je;j++)
{ e=rand()%101;
}
printf(\n);
}
//결과값 출력
for(i=0;iq;i++)
{
for(j=0;je;j++)
{
for(k=0;kw;k++)
{
c[i][j]=c[i][j]+a[i][k]*b[k][j];
}
printf(%d ,c[i][j]);
}
}
}