1、【网易有道11'实习题】
#include <stdio.h>
#include <math.h>
const int N = 7;
void AddMatrix(int n)
{
int i,j,k=0;
int a[N][N]={0};
//************给边界赋值****************
for(i=0;i<n;){
for(j=0;j<n;j++)
{
a[i][j]=1;
a[j][i]=1;
}
i=i+n-1;
}
//*************非边界赋值*****************
for(i=1;i<=(n-1)/2;i++){
for(j=i;j<=(n-1)/2;j++)
{
a[i][j]=a[i-1][j]+a[i][j-1];
//printf("%d\n",a[i][j]);
a[j][i]=a[i][j];
a[n-i-1][j]=a[i][j];
a[j][n-i-1]=a[i][j];
a[n-i-1][n-j-1]=a[i][j];
a[n-j-1][n-i-1]=a[i][j];
a[i][n-j-1]=a[i][j];
a[n-j-1][i]=a[i][j];
}
}
//**********打印*****************
for(i=0;i<n;i++)
{ for(j=0;j<n;j++)
{printf("%d ",a[i][j]);}
printf("\n");
}
}
void main()
{
AddMatrix(N);
}
运行结果: