
求3*3矩阵的最小值并输出
在begin和end之间填入编写的若干语句#include<stdio.h>#defineN3intfun(inta[N][N]){intmin;/***********...
在begin和end之间填入编写的若干语句
#include <stdio.h>
#define N 3
int fun(int a[N][N])
{
int min;
/***********begin***********/
/************end************/
return min;
}
int main()
{
void NONO( );//函数声明
int a[N][N]={-1,2,3,4,9,5,7,8,6};
int i,j,min;
printf("array is:\n");
for(i=0;i<N;i++)
{
for(j=0;j<N;j++)
printf("%5d",a[i][j]);
printf("\n");
}
min=fun(a);
printf("Result is: %d\n",min);
NONO( );
return 0;
}
void NONO( )
{ FILE *fr,*fw;
int i,j,k,m,a[N][N];
fr=fopen("D:\\homework\\95100410\\PROGIN.DAT","r");
fw=fopen("D:\\homework\\95100410\\PROGOUT.DAT","w");
for(i=1;i<=5;i++)
{ for(j=0;j<N;j++)
for(k=0;k<N;k++)
{ fscanf(fr,"%d",&a[j][k]);
fprintf(fw,"%4d",a[j][k]);}
fprintf(fw,"Min = %d\n",fun(a));}
fclose(fr);
fclose(fw);
}
int i,j;
for(i=0;i<3;i++)
for(j=0;j<3;++j)
if(a[i][j]<min)
min=a[i][j]
我的填写是这样的;但是好像出错了
error C2143: syntax error : missing ';' before 'return' 展开
#include <stdio.h>
#define N 3
int fun(int a[N][N])
{
int min;
/***********begin***********/
/************end************/
return min;
}
int main()
{
void NONO( );//函数声明
int a[N][N]={-1,2,3,4,9,5,7,8,6};
int i,j,min;
printf("array is:\n");
for(i=0;i<N;i++)
{
for(j=0;j<N;j++)
printf("%5d",a[i][j]);
printf("\n");
}
min=fun(a);
printf("Result is: %d\n",min);
NONO( );
return 0;
}
void NONO( )
{ FILE *fr,*fw;
int i,j,k,m,a[N][N];
fr=fopen("D:\\homework\\95100410\\PROGIN.DAT","r");
fw=fopen("D:\\homework\\95100410\\PROGOUT.DAT","w");
for(i=1;i<=5;i++)
{ for(j=0;j<N;j++)
for(k=0;k<N;k++)
{ fscanf(fr,"%d",&a[j][k]);
fprintf(fw,"%4d",a[j][k]);}
fprintf(fw,"Min = %d\n",fun(a));}
fclose(fr);
fclose(fw);
}
int i,j;
for(i=0;i<3;i++)
for(j=0;j<3;++j)
if(a[i][j]<min)
min=a[i][j]
我的填写是这样的;但是好像出错了
error C2143: syntax error : missing ';' before 'return' 展开
1个回答
展开全部
你填的有2个问题,一个是min的初始值没有确定,另一个是你的min=a[i][j]没有加分号。
可以按照下面的方法写:
int fun(int a[N][N])
{
int min;
/***********begin***********/
int i,j;
min=INT_MAX;
for( i=0;i<3;i++)
for(j=0;j<3;j++)
if(a[i][j]<min)
min=a[i][j];
/************end************/
return min;
}
可以按照下面的方法写:
int fun(int a[N][N])
{
int min;
/***********begin***********/
int i,j;
min=INT_MAX;
for( i=0;i<3;i++)
for(j=0;j<3;j++)
if(a[i][j]<min)
min=a[i][j];
/************end************/
return min;
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询