输入N,打印N*N矩阵


Posted in 面试题 onFebruary 20, 2012
比如 N = 3,打印:
1 2 3
8 9 4
7 6 5
N = 4,打印:
1 2 3 4
12 13 14 5
11 16 15 6
10 9 8 7
1 #define N 15
int s[N][N];
void main()
{
int k = 0, i = 0, j = 0;
int a = 1;
for( ; k {
while( j while( i while( j > k-1 ) s[i][j--] = a++; i–; j++;
while( i > k ) s[i--][j] = a++; i++; j++;
}
for( i = 0; i {
for( j = 0; j cout cout }
}
2 define MAX_N 100
int matrix[MAX_N][MAX_N];
/*
*(x,y):第一个元素的坐标
* start:第一个元素的值
* n:矩阵的大小
*/
void SetMatrix(int x, int y, int start, int n) {
int i, j;
if (n return;
if (n == 1) { //矩阵大小为1时
matrix[x][y] = start;
return;
}
for (i = x; i matrix[y][i] = start++;
for (j = y; j matrix[j][x+n-1] = start++;
for (i = x+n-1; i > x; i–) //底部
matrix[y+n-1][i] = start++;
for (j = y+n-1; j > y; j–) //左部
matrix[j][x] = start++;
SetMatrix(x+1, y+1, start, n-2); //递归
}
void main() {
int i, j;
int n;
scanf(“%d”, &n);
SetMatrix(0, 0, 1, n);
//打印螺旋矩阵
for(i = 0; i for (j = 0; j printf(“%4d”, matrix[i][j]);
printf(“\n”);
}
}

Tags in this post...

面试题 相关文章推荐
PHP如何调用MYSQL存储过程
May 30 面试题
String和StringBuffer的区别
Aug 13 面试题
腾讯技术类校园招聘笔试试题
May 06 面试题
用缩写的指针比较"if(p)" 检查空指针是否可靠?如果空指针的内部表达不是0会怎么样?
Jan 05 面试题
SQL Server面试题
Oct 17 面试题
盛大二次面试题
Nov 18 面试题
什么是静态路由?什么是动态路由?各自的特点是什么?
Sep 16 面试题
作为网站管理者应当如何防范XSS
Aug 16 面试题
Linux开机引导的步骤是什么
Oct 19 面试题
一些Solaris面试题
Dec 22 面试题
Linux的主要特性
Sep 03 面试题
为什么需要版本控制?
Aug 08 面试题
static函数与普通函数有什么区别
Dec 25 #面试题
static全局变量与普通的全局变量有什么区别
May 27 #面试题
指针和引用有什么区别
Jan 13 #面试题
C++如何引用一个已经定义过的全局变量
Aug 25 #面试题
C/C++程序员常见面试题二
Nov 19 #面试题
C/C++程序员常见面试题一
Dec 08 #面试题
"火柴棍式"程序员面试题
Mar 16 #面试题
You might like
for循环连续求和、九九乘法表代码
2012/02/20 PHP
PHP 将dataurl转成图片image方法总结
2016/10/14 PHP
深入理解Javascript闭包 新手版
2010/12/28 Javascript
JQuery入门—JQuery程序的代码风格详细介绍
2013/01/03 Javascript
用Javascript来生成ftp脚本的小例子
2013/07/03 Javascript
javascript生成随机颜色示例代码
2014/05/05 Javascript
JavaScript中消除闭包的一般方法介绍
2015/03/16 Javascript
分享12个实用的jQuery代码片段
2016/03/09 Javascript
解析微信JS-SDK配置授权,实现分享接口
2016/12/09 Javascript
Angularjs修改密码的实例代码
2017/05/26 Javascript
Angular中的interceptors拦截器
2017/06/25 Javascript
Vue项目中quill-editor带样式编辑器的使用方法
2017/08/08 Javascript
cocos creator Touch事件应用(触控选择多个子节点的实例)
2017/09/10 Javascript
vue2 router 动态传参,多个参数的实例
2017/11/10 Javascript
JS实现遍历不规则多维数组的方法
2018/03/21 Javascript
vue异步加载高德地图的实现
2018/06/19 Javascript
原生JS实现轮播图效果
2018/10/12 Javascript
详解vue项目接入微信JSSDK的坑
2018/12/14 Javascript
Vue router安装及使用方法解析
2020/12/02 Vue.js
11个并不被常用但对开发非常有帮助的Python库
2015/03/31 Python
Python实现简单登录验证
2016/04/13 Python
对Python进行数据分析_关于Package的安装问题
2017/05/22 Python
深入理解python中函数传递参数是值传递还是引用传递
2017/11/07 Python
Python实现检测文件MD5值的方法示例
2018/04/11 Python
Python PyAutoGUI模块控制鼠标和键盘实现自动化任务详解
2018/09/04 Python
python实现在遍历列表时,直接对dict元素增加字段的方法
2019/01/15 Python
HTML5中的新元素介绍
2008/10/17 HTML / CSS
canvas实现圆形进度条动画的示例代码
2017/12/26 HTML / CSS
美国大尺码女装零售商:TORRID
2016/10/01 全球购物
化学学院毕业生自荐信范文
2013/12/17 职场文书
股权收购意向书
2014/04/01 职场文书
殡葬服务心得体会
2014/09/11 职场文书
2014年班组建设工作总结
2014/12/01 职场文书
2015年员工试用期工作总结
2015/05/28 职场文书
Python torch.flatten()函数案例详解
2021/08/30 Python
JavaWeb实现显示mysql数据库数据
2022/03/19 Java/Android