앞에 질문 워닝 소스 올려요~
에녹
답변 부탁드려요 아직 배운지 얼마 안 되어서.... return 받는 거에 익숙하지 않네요..
워닝은 assuming exturn returning int가 뜨네요.
#include stdio.h
int main(void)
{
int A[4][3]={ {35,28,73},{25,32,69},{97,56,23},{45,97,15} };
int B[4][3]={ {125,28,56},{34,32,69},{57,56,59},{45,33,45} };
int C[4][3]={0};
int D[4][3]={0};
plus(A,B,C);
minus(A,B,D);
print(A,B,C,D);
return 0;
}
int plus(int a[][3], int b[][3], int c[][3])
{
int i,j;
for(i=0;i4;i++)
for(j=0;j3;j++)
{
c[i][j]=a[i][j]+b[i][j];
}
return plus(a[i][j],b[i][j],c[i][j]);
}
int minus(int a[][3], int b[][3], int d[][3])
{
int i,j;
for(i=0;i4;i++)
for(j=0;j3;j++)
{
d[i][j]=a[i][j]-b[i][j];
}
}
int print(int a[][3], int b[][3], int c[][3], int d[][3])
{
int i,j;
printf(두 행렬의 합과 차를 구해보자.\n);
printf(첫번째 행렬\n);
for(i=0;i4;i++)
{
for(j=0;j3;j++)
{
printf(\t%3d%s,a[i][j],(j==2)?\n\n:);
}
}
printf(두번째 행렬\n);
for(i=0;i4;i++)
{
for(j=0;j3;j++)
{
printf(\t%3d%s,b[i][j],(j==2)?\n\n:);
}
}
printf(두 행렬의 합 행렬\n);
for(i=0;i4;i++)
{
for(j=0;j3;j++)
{
printf(\t%3d%s,c[i][j],(j==2)?\n\n:);
}
}
printf(두 행렬의 차 행렬\n);
for(i=0;i4;i++)
{
for(j=0;j3;j++)
{
printf(\t%3d%s,d[i][j],(j==2)?\n\n:);
}
}
}
-
해까닥
plus 함수에 리턴형식이 잘못되어있고 리턴이 필요없습니다. 배열주소값을 인자로 받기때문에 리턴없이도 선언된 배열에 값이 들어가기때문입니다. 그리고 함수프로토 타입이 선언이 안되어 있습니다. 답글로 수정해올렸으니 참고하세요.
-
이퓨리한은지
에러나실텐데..
-
눈꽃
워닝 그냥 무시하셔도 되요
저거
메인을 int 형으로 잡고
마지막에
return 0 안써주셔서 나는...