我来我网
https://5come5.cn
 
您尚未 登录  注册 | 菠菜 | 软件站 | 音乐站 | 邮箱1 | 邮箱2 | 风格选择 | 更多 » 
 

本页主题: 问个数组的问题 显示签名 | 打印 | 加为IE收藏 | 收藏主题 | 上一主题 | 下一主题

hcl0317



性别: 帅哥 状态: 该用户目前不在线
等级: 人见人爱
发贴: 2005
威望: 0
浮云: 1146
在线等级:
注册时间: 2006-03-01
最后登陆: 2012-05-13

5come5帮你背单词 [ carpenter /'ka:pintə/ n. 木工,木匠 ]


问个数组的问题

要设计一个NxN的螺旋矩阵
例如4x4的矩阵如下:
1   2   3   4
12 13 14   5
11 16 15   6
10   9   8   7


想了很长时间,没找到地方下手.问题是需要设计一个NxN的,但是数组定义的时候要求不能包含变量.

请高手给指点一下
不胜感激!
顶端 Posted: 2006-12-19 18:39 | [楼 主]
hcl0317



性别: 帅哥 状态: 该用户目前不在线
等级: 人见人爱
发贴: 2005
威望: 0
浮云: 1146
在线等级:
注册时间: 2006-03-01
最后登陆: 2012-05-13

5come5帮你背单词 [ shall /æl, əl/ aux. & v. 将,会,必须 ]


有没有高手来指点一下嘛
顶端 Posted: 2006-12-19 19:24 | [1 楼]
kangtalc



性别: 帅哥 状态: 该用户目前不在线
头衔: 揍敌客·奇犽
等级: 希望之光
家族: 万人坑恋影部落
发贴: 1723
威望: 5
浮云: 1113
在线等级:
注册时间: 2005-09-21
最后登陆: 2008-06-29

5come5帮你背单词 [ fond /fond/ a. 喜欢的 ]


声请动态数组
顶端 Posted: 2006-12-19 19:58 | [2 楼]
kangtalc



性别: 帅哥 状态: 该用户目前不在线
头衔: 揍敌客·奇犽
等级: 希望之光
家族: 万人坑恋影部落
发贴: 1723
威望: 5
浮云: 1113
在线等级:
注册时间: 2005-09-21
最后登陆: 2008-06-29

5come5帮你背单词 [ ally /'ælai, ə'lai/ n. 同明者,伙伴,同类 ]


申请动态数组
顶端 Posted: 2006-12-19 19:58 | [3 楼]
hcl0317



性别: 帅哥 状态: 该用户目前不在线
等级: 人见人爱
发贴: 2005
威望: 0
浮云: 1146
在线等级:
注册时间: 2006-03-01
最后登陆: 2012-05-13

5come5帮你背单词 [ overlook /əuvə'luk/ vt. 眺望,俯瞰,忽略,漏掉未看见,宽容,放任 ]


说的明白点噻
怎么声明嘛
顶端 Posted: 2006-12-19 20:59 | [4 楼]
kangtalc



性别: 帅哥 状态: 该用户目前不在线
头衔: 揍敌客·奇犽
等级: 希望之光
家族: 万人坑恋影部落
发贴: 1723
威望: 5
浮云: 1113
在线等级:
注册时间: 2005-09-21
最后登陆: 2008-06-29

5come5帮你背单词 [ architecture /'a:kitektə/ n. 建筑学,建筑式样,结构,构造 ]


声明一个指针 int * arr,   让它来存放数组的首地址
让用户输入一个数n
在c语言中创建大小为n的int动态数组的语法为 arr = (int *)malloc(sizeof(int) * n )
这条语句就是申请一块大小可以存放n个int类型的内存地址空间,让它的首地址给arr
在用完这个数组后就要把空间释放掉,否则会造成内存泄露,语法为 free(arr)
在c++语言中同样有相同的功能,一般用arr = new int[n]来申请空间
用delete [] arr释放空间
over!
顶端 Posted: 2006-12-19 22:36 | [5 楼]
kangtalc



性别: 帅哥 状态: 该用户目前不在线
头衔: 揍敌客·奇犽
等级: 希望之光
家族: 万人坑恋影部落
发贴: 1723
威望: 5
浮云: 1113
在线等级:
注册时间: 2005-09-21
最后登陆: 2008-06-29

5come5帮你背单词 [ apologize /ə'poləd3əaiz/ vi. 道歉,认错,辩护,辩解 ]


申请的动态数组就可以直接用arr[[0],arr[1]...arr[n]操纵数组了
顶端 Posted: 2006-12-19 22:37 | [6 楼]
hcl0317



性别: 帅哥 状态: 该用户目前不在线
等级: 人见人爱
发贴: 2005
威望: 0
浮云: 1146
在线等级:
注册时间: 2006-03-01
最后登陆: 2012-05-13

5come5帮你背单词 [ sullen /'sΛlən/ a. 闷闷不乐的,(天气等)阴沉的 ]


谢谢哦
顶端 Posted: 2006-12-19 22:41 | [7 楼]
tamato



性别: 帅哥 状态: 该用户目前不在线
等级: 鹤立鸡群
发贴: 1107
威望: 0
浮云: 1149
在线等级:
注册时间: 2004-03-19
最后登陆: 2007-06-25

5come5帮你背单词 [ dawn /do:n/ n. 黎明;开端;vi. 破晓,开始出现 ]


呼唤 zc1984蝈蝈 出来说明 方法
顶端 Posted: 2006-12-20 14:00 | [8 楼]
皇马之子



性别: 帅哥 状态: 该用户目前不在线
头衔: 自强不息 厚德载物
等级: 荣誉会员
家族: 梦魇图腾
发贴: 11934
威望: 4
浮云: 409
在线等级:
注册时间: 2005-05-12
最后登陆: 2011-11-18

5come5帮你背单词 [ superiority /sju:pəri'oriti/ n. 优势,优越性 ]


Quote:
引用第5楼kangtalc于2006-12-19 22:36发表的:
声明一个指针 int * arr,   让它来存放数组的首地址
让用户输入一个数n
在c语言中创建大小为n的int动态数组的语法为 arr = (int *)malloc(sizeof(int) * n )
这条语句就是申请一块大小可以存放n个int类型的内存地址空间,让它的首地址给arr
在用完这个数组后就要把空间释放掉,否则会造成内存泄露,语法为 free(arr)
.......

学到了动态数组~~~
顶端 Posted: 2006-12-20 14:06 | [9 楼]
屠龙



性别: 帅哥 状态: 该用户目前不在线
等级: 品行端正
发贴: 382
威望: 0
浮云: 1118
在线等级:
注册时间: 2006-02-21
最后登陆: 2009-09-29

5come5帮你背单词 [ intensive /in'tensiv/ a. 精心的,专心致志的,深入细致的 ]


Quote:
引用第6楼kangtalc于2006-12-19 22:37发表的:
申请的动态数组就可以直接用arr[[0],arr[1]...arr[n]操纵数组了

我想你这是一维的吧,
人家说的可是二维的。。。


个人觉得可以这样:
arr = (int *)malloc(sizeof(int) * n *n)

这样用的话arr[M][N] 的地址就是arr + M*n+N ;
地址最大为 arr +n*n-1;

大概就这么用的,
地址有误,要上课了回来在改
…………^-^





[ 此贴被屠龙在2006-12-20 20:24重新编辑 ]
顶端 Posted: 2006-12-20 14:22 | [10 楼]
我来我网·5come5 Forum » 程序员之家

Total 0.008712(s) query 5, Time now is:11-27 13:23, Gzip enabled
Powered by PHPWind v5.3, Localized by 5come5 Tech Team, 黔ICP备16009856号