请问为什么运行不了?
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
#define N 5
double fun(int w[][N])
{
double ave;
int k1=0,k2=0,K=0,k=0;
int i,j;
for(i=0;i<N;i+4)
{
for(j=0;j<N;j++)
{
k++;
k1+=w[i][j];
}
}
printf("%f",k1);
for(i=0;i<N;i+4)
{
for(j=1;j<N-1;j++)
{
k++;
k2+=w[j][i];
}
}
printf("%f",k2);
k=k1+k2;
ave=K/k;
return ave;
}
void main()
{
int a[N][N]={0,1,2,7,9,1,9,7,4,5,2,3,8,3,1,4,5,0,8,2,5,9,1,4,1};
int i,j;
double s;
system("CLS");
printf("The array\n");
for(i=0;i<N;i++)
{
for(j=0;j<N;j++)
{
printf("%4d",a[i][j]);
}
printf("\n");
}
s=fun(a);
printf("THE RESULT\n");
printf("The sum is:%1f\n",s);
}
建议在一个函数里不要同时有大小写命名的变量,像这个k K,有时候分不清到底是大写还是小写
double fun(int w[N][N])
{
double ave, K = 0.0;
int k1 = 0, k2 = 0, k = 0;
int i, j;
for (i = 0; i < N; i += 4)
{
for (j = 0; j < N; j++)
{
k++;
k1 += w[i][j];
}
}
printf("%d\n", k1);
for (i = 0; i < N; i += 4)
{
for (j = 1; j < N - 1; j++)
{
k++;
k2 += w[j][i];
}
}
printf("%d\n", k2);
K = k1 + k2;
ave = K / k;
return ave;
}