国二c机试编程题,哪错啦

来源:百度知道 编辑:UC知道 时间:2024/05/28 09:37:14
#include <conio.h>
#include <stdio.h>
#include <stdlib.h>
#define N 5
void fun (int a[][N])
{
int i,j;
for(j=i;j<N;j++)
for(i=0;i<N;i++)
a[i][j]=0;
}
void main()
{
FILE *wf;
int a[N][N],i,j;
int b[N][N]={4,5,6,7,8,1,7,9,5,3,3,2,6,2,4,2,8,0,7,6,3,6,4,7,9};
system("CLS");
printf("*****The array*****\n");
for(i=0;i<N;i++) /*产生一个随机的5*5矩阵*/
{ for(j=0;j<N;j++)
{a[i][j]=rand()%10;
printf("%4d", a[i][j]);
}
printf("\n");
}
fun(a);
printf("THE RESULT\n");
for(i=0;i<N;i++)
{ for(j=0;j<N;j++)
printf("%4d",a[i][j]);
printf("\n");
}
/******************************/
wf=fopen("out.dat","w")

/*程序没有任何问题,问题在这个函数里面*/
void fun (int a[][N])
{
int i,j;
for(j=0;j<N;j++)//问题在这里,你仔细看一下,可能是你的疏忽造成
for(i=0;i<N;i++)
a[i][j]=0;
}
/*下次认真一点吧!!!*/
/*还有是不是如楼上所说的那样,那样你就需要把两个for循环颠倒一下位置*/

函数里两个循环
for(j=i;j<N;j++)
for(i=0;i<N;i++)

是不是顺序反了。。。