VC++ 错错错错错??????

来源:百度知道 编辑:UC知道 时间:2024/05/16 10:53:07
#include<iostream.h>
void data(int p[][10],int);
void main(void)
{ int i,j,n,array[10][10];
cout<<"Input n(n<=10):";
cin>>n;
data(array ,n);
for(i=0;i<n;i++)
{ for(j=0;j<n;j++)
cout<<array[i][j]<<'\t';
cout<<endl;
}
}
void data(int p[][10],int m)
{ for(int i=0;i<m;i++)
p[i][0]=(m-i)*(m-i);
for(i=1;i<m;i++)
{ for(int j=0;j<m-1;j++)
{
p[i][j]=p[i-1][j+1];
p[i][m-1]=p[i][j];
}
}
}

你的程序没有语法错误,但是你的算法应该错了
之所以输出了好多意想不到的值,是因为你没有初始化数组。
如果初始化一下数组(int array[10][10]={0};),你会发现那些意想不到的值都变成了0,就是说你的data函数做了很多无用功,把一些位置的0,移动到了另外的位置,你可能是移动错了方向。

看不出来有什么错误,不过
#include <iostream.h>
应该写
#include <iostream>
using namespace std;

你用VC的控制台应用程序编译,就可以了