您的位置:首页 > 职场人生

程序员面试题精选100题(51)-顺时针打印矩阵

2013-01-07 20:37 316 查看
// 程序员面试题精选100题(51)-顺时针打印矩阵.cpp : 定义控制台应用程序的入口点。
//

#include "stdafx.h"
#include <iostream>
using namespace std;
#define M 9
#define N 4
int _tmain(int argc, _TCHAR* argv[])
{
int arr[M]
;
int all=0;
int i,j,iup=0,idown=M-1,jleft=0,jright=N-1;
while(all<M*N)
{
i=iup;//small
for (j=jleft;j<=jright;j++)
{
arr[i][j]=all++;
}
iup++;
j=jright;
for (i=iup;i<=idown;i++)
{
arr[i][j]=all++;
}
jright--;
i=idown;
for (j=jright;j>=jleft;j--)
{
arr[i][j]=all++;
}
idown--;
j=jleft;
for (i=idown;i>=iup;i--)
{
arr[i][j]=all++;
}
jleft++;
}
for (int ik=0;ik<M;ik++)
{
for (int jk=0;jk<N;jk++)
{
if (arr[ik][jk]<10)
{
cout<<" ";
}
cout<<arr[ik][jk]<<" ";
}
cout<<endl;
}
system("pause");
return 0;
}
都是按照蛇形的方式遍历,我以赋值代替输出,貌似比给的答案简单。蛇年做出蛇题,感觉今年要走好运呀。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: