C/C++面试题解

来源:互联网 发布:悟空网络加速器官网 编辑:程序博客网 时间:2024/04/26 05:31
1.输入一个n ,然后在屏幕上打印出NxN 的矩阵!

例如,输入一个3,则
1 2 3
8 9 4
7 6 5
输入一个4,则
1 2 3 4
12 13 14 5
11 16 15 6
10 9 8 7

解:

#include
#include

using namespace std;

const int N=10;

void print(int a[][N],int n)
{
int round=0;
int i,j;
int m=1;

while(m<=n*n)
{
for(i=round;i a[round]=m++;
for(i=round+1;i a[n-round-1]=m++;
for(i=n-round-2;i>=round;i--)
a[n-round-1]=m++;
for(i=n-round-2;i>=round+1;i--)
a[round]=m++;
round++;
}
for(i=0;i {
for(j=0;j {
cout < }
cout << endl;
}
}

void main()
{
int a[N][N];
int round=0;
int n,m=1;
cout << "Please input n:";
cin>>n;
print(a,n);
}
原创粉丝点击