안장점계산
큰꽃
질문 제목 : 중간에 하다가 자꾸 컴파일에러가 나서 질문합니다.주어진파일에 행렬을 입력받아서 안장점이 있으면 안장ㅇ점을표시하면서 출력하고,
없으면 없다고 메시지가나옵니다.질문 내용 : 다음은 제코드입니다.
#include stdio.h
#include stdlib.h
struct matrix{
int* m;
int i,j;
};main()
{
matrix m;
int a,b;
if(saddle_point(m,*a,*b) == null)
{
printf(there is no saddle point.\n);
}
else
result(m,a,b);
}
int input(matrix m)
{
int c,d;
file* fp = fopen(input.txt,r);
if(fp==null)
{
return null;
}
else
{
fscanf(fp, %d %d, &(m-r), &(m-c));
}
fclose(fp);
return 1;
}
int max point(matrix m, int j)
{
int i;
int max=1;
for(i=2; i=m.r; i++)
{
if(m.m[max][j] m,m[i][j])
{
max =i;
}
}
return max;
}
int min point(matrix m, int i)
{
int j;
int min=1;
for(j=2; j=m.c; j++)
{
if(m.m[i][min] m.m[i][j])
&nbnbsp; {
min=j;
}
}
return min;
}
int saddle_point(matrix m, int* a, int* b)
{
int i,j;
for(i=0; im.r; i++)
{
for(j=0; jm.c; j++)
{
if(j == min && i== max )
{
*a=j;
*b=i;
return 1;
}
}
}
return null;
}
void result(matrix m, int a, int b)
{
int i,j;
for(i=0; im.r; i++)
{
for(j=0; jm.c; j++)
{
if(j==a && i==b)
{
printf(%2d, m.m[i][j]);
}
else
{
printf(%2d, m.m[i][j]);
}
}
printf(\n);
}
}