输入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...

面试题 相关文章推荐
Java平台和其他软件平台有什么不同
Jun 05 面试题
C语言变量的命名规则都有哪些
Dec 27 面试题
以下的初始化有什么区别
Dec 16 面试题
关联、聚合(Aggregation)以及组合(Composition)的区别
Feb 29 面试题
SQL SERVER面试资料
Mar 30 面试题
Order by的几种用法
Jun 16 面试题
什么是表空间(tablespace)和系统表空间(System tablespace)
Feb 25 面试题
私有程序集与共享程序集有什么区别
Apr 05 面试题
西安启天科技有限公司网络工程师面试题笔试题
Jun 12 面试题
C#笔试题和英文面试题
Feb 07 面试题
软件测试工程师笔试题带答案
Mar 27 面试题
新锐科技Java程序员面试题
Jul 25 面试题
static函数与普通函数有什么区别
Dec 25 #面试题
static全局变量与普通的全局变量有什么区别
May 27 #面试题
指针和引用有什么区别
Jan 13 #面试题
C++如何引用一个已经定义过的全局变量
Aug 25 #面试题
C/C++程序员常见面试题二
Nov 19 #面试题
C/C++程序员常见面试题一
Dec 08 #面试题
"火柴棍式"程序员面试题
Mar 16 #面试题
You might like
用函数读出数据表内容放入二维数组
2006/10/09 PHP
基于header的一些常用指令详解
2013/06/06 PHP
php中return的用法实例分析
2015/02/28 PHP
php数组指针操作详解
2017/02/14 PHP
PHP使用file_get_contents发送http请求功能简单示例
2018/04/29 PHP
Laravel程序架构设计思路之使用动作类
2018/06/07 PHP
ThinkPHP5框架中使用JWT的方法示例
2020/06/03 PHP
select 控制网页内容隐藏于显示的实现代码
2010/05/25 Javascript
js获取RadioButtonList的Value/Text及选中值等信息实现代码
2013/03/05 Javascript
javascript级联下拉列表实例代码(自写)
2013/05/10 Javascript
复杂的javascript窗口分帧解析
2016/02/19 Javascript
JS鼠标滚动分页效果示例
2017/07/05 Javascript
基于Vuex无法观察到值变化的解决方法
2018/03/01 Javascript
解决easyui日期时间框ie的兼容的问题
2018/03/01 Javascript
layui的表单提交以及验证和修改弹框的实例
2019/09/09 Javascript
JavaScript中的this妙用实例分析
2020/05/09 Javascript
React实现阿里云OSS上传文件的示例
2020/08/10 Javascript
[26:24]完美副总裁、DOTA2负责人蔡玮专访:电竞如人生
2014/09/11 DOTA
微信 用脚本查看是否被微信好友删除
2016/10/28 Python
对python中的for循环和range内置函数详解
2018/04/17 Python
python中cPickle类使用方法详解
2018/08/27 Python
Python3.5运算符操作实例详解
2019/04/25 Python
基于腾讯云服务器部署微信小程序后台服务(Python+Django)
2019/05/08 Python
Python selenium文件上传下载功能代码实例
2020/04/13 Python
opencv 阈值分割的具体使用
2020/07/08 Python
python批量检查两个对应的txt文件的行数是否一致的实例代码
2020/10/31 Python
HTML5 canvas基本绘图之绘制矩形
2016/06/27 HTML / CSS
导出HTML5 Canvas图片并上传服务器功能
2019/08/16 HTML / CSS
Zavvi荷兰:英国大型音像制品和图书游戏零售商
2018/03/22 全球购物
PREMIUM-MALL法国:行李、箱包及配件在线
2019/05/30 全球购物
DataList 能否分页,请问如何实现?
2015/05/03 面试题
交通安全教育制度
2014/02/02 职场文书
企业金融服务方案
2014/06/03 职场文书
学生党员一帮一活动总结
2014/07/08 职场文书
Oracle更换为MySQL遇到的问题及解决
2021/05/21 Oracle
基于tensorflow权重文件的解读
2021/05/26 Python