版块导航
正在加载中...
客户端APP下载
论文辅导
申博辅导
登录
注册
帖子
帖子
用户
本版
应《网络安全法》要求,自2017年10月1日起,未进行实名认证将不得使用互联网跟帖服务。为保障您的帐号能够正常使用,请尽快对帐号进行手机号验证,感谢您的理解与支持!
24小时热门版块排行榜
>
论坛更新日志
(1539)
>
虫友互识
(115)
>
导师招生
(28)
>
论文道贺祈福
(19)
>
基金申请
(13)
>
休闲灌水
(12)
>
博后之家
(10)
>
硕博家园
(10)
>
考博
(10)
>
教师之家
(9)
>
文献求助
(8)
>
考研
(7)
>
论文投稿
(7)
>
公派出国
(5)
>
招聘信息布告栏
(4)
>
有机资源
(4)
小木虫论坛-学术科研互动平台
»
计算模拟区
»
程序语言
»
C/C++
»
【求助】问一个程序,某处有点不明白。。。【已完结】
5
1/1
返回列表
查看: 809 | 回复: 12
只看楼主
@他人
存档
新回复提醒
(忽略)
收藏
在APP中查看
本帖产生 1 个 程序强帖 ,点击这里进行查看
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖
zyj8119
木虫
(著名写手)
应助: 65
(初中生)
贵宾: 0.003
金币: 915.1
帖子: 2936
在线: 1329.4小时
虫号: 664177
[交流]
【求助】问一个程序,某处有点不明白。。。【已完结】
以下程序是将一个5*5的矩阵中最大的元素放在中心,四个角分别放置最小的元素。
CODE:
#include
#include
void process(int[][5]);
void main()
{ int a[5][5]={{16,17,18,19,1},{5,4,3,2,20},{25,24,23,22,21},{6,7,8,9,10},{15,14,13,12,11}};
cout<<"处理前的矩阵:\n";
for(int i=0;i<5;i++){
for(int j=0;j<5;j++)cout<
cout<
}
process(a);
cout<<"处理后的矩阵:\n";
for(i=0;i<5;i++){
for(int j=0;j<5;j++)cout<
cout<
}
}
void process(int a[][5])
{ int i,m,j,t, *p=&a[0][0];
int n[4]={0,4,20,24};
for(m=p[0],j=0,i=1;i<25;i++)
if(m
t=p[12];p[12]=m;p[j]=t;
for(int k=0;k<4;k++){
m=p[n[k]];j=n[k];
for(i=0;i<25;i++){
if(i==n[t])break;
if(t>=k&&m>p[i]){m=p[i];j=i;}//此处为什么必须t>=k
}
if(j!=n[k])t=p[n[k]],p[n[k]]=m,p[j]=t;
}
}
[
Last edited by nono2009 on 2010-11-12 at 08:41
]
回复此楼
» 猜你喜欢
有时候真觉得大城市人没有县城人甚至个体户幸福
已经有9人回复
CSC & MSCA 博洛尼亚大学能源材料课题组博士/博士后招生|MSCA经费充足、排名优
已经有6人回复
天津大学招2026.09的博士生,欢迎大家推荐交流(博导是本人)
已经有4人回复
同年申请2项不同项目,第1个项目里不写第2个项目的信息,可以吗
已经有3人回复
退学或坚持读
已经有28人回复
面上项目申报
已经有3人回复
酰胺脱乙酰基
已经有9人回复
博士延得我,科研能力直往上蹿
已经有7人回复
面上基金申报没有其他的参与者成吗
已经有5人回复
遇见不省心的家人很难过
已经有22人回复
高级回复
» 抢金币啦!回帖就可以得到:
查看全部散金贴
中国石油大学(华东)吴传德教授团队(国家杰青)2026硕、博招生
+
2
/244
香港岭南大学郭瑛课题组博士招生 (2026年秋季入学)
+
1
/177
中国科学院深圳先进技术研究院——招聘博士后
+
3
/92
威格焊接手套箱:稳定惰性环境,实现节能降本
+
1
/85
欢迎报考南京农业大学植物环境适应课题组课题组2026级博士生。
+
1
/84
中国科学院深圳先进技术研究院——招聘博士后
+
2
/52
香港科技大学计算物理及流体力学课题组招收全奖博士后及博士生(2026年9月入学)
+
1
/40
香港科技大学计算物理及流体力学课题组招收全奖博士后及博士生(2026年9月入学)
+
1
/38
深圳大学信息功能电子材料方向“申请-考核制”博士生招生
+
2
/34
香港城市大学软物质课题组现招收博士研究生 2026.09 入学
+
1
/34
中南林业科技大学生物质绿色转化与功能材料课题组2026年博士招生
+
1
/14
南京医科大学国家级高层次青年人才团队招收博士研究生
+
1
/11
北京工业大学化生学院青年教师或“青年优秀人才”招聘启事
+
1
/11
哈工大(深圳)物理招收2026年9月入学博士生1个名额
+
1
/6
【博士招生】哈工大(深圳)智能学部机器人与先进制造学院 陆文杰老师课题组
+
1
/4
自荐:大模型ai辅助论文阅读软件:EasyReader论文易读
+
1
/4
澳科大招收2026年秋季入学药剂学/生物材料方向全奖博士研究生
+
1
/3
求资源
+
1
/2
苏州国家实验室甘斌研究员项目组招收2026级博士
+
1
/2
Advanced Science审稿周期一般要多久
+
1
/1
1楼
2010-11-11 02:01:07
已阅
回复此楼
关注TA
给TA发消息
送TA红花
TA的回帖
wangww2011
木虫
(著名写手)
程序强帖: 13
应助: 11
(小学生)
金币: 4023.1
帖子: 1915
在线: 1537.1小时
虫号: 772953
★
zyj8119(金币+5):谢谢朋友精彩的程序!!!! 2010-11-12 01:55:39
nono2009(金币+1, 程序强帖+1):鼓励应助 2010-11-12 08:41:15
我觉得这个答案和题目有点不符合啊
我重写了,虽然不简洁,但是很好理解
CODE:
#include
#include
void process2(int a[][5]) {
int i, k, tmp;
int *p = &a[0][0];
int min[4],max = p[0];
int index[5];
int n[5] = {0, 4, 20, 24, 12};
for (i = 0; i < 25; i++) {//得到最大值
if (max < p[i]) {
max = p[i];
index[4] = i;
}
}
for (k = 0; k < 4; k++) {//得到4个最小值
min[k] = p[k];
for (i = 0; i < 25; i++) {
if (min[k] > p[i]) {
min[k] = p[i];
index[k] = i;
}
}
p[index[k]] = max;//把当前的最小值换成最大值
}
for (k = 0; k < 4; k++) {//还原原始数组
p[index[k]] = min[k];
}
for (k = 0; k < 5; k++) {//放到特定位置
tmp = p[n[k]];
p[n[k]] = p[index[k]];
p[index[k]] = tmp;
}
}
void main() {
int a[5][5] = {
{16, 17, 18, 19, 1},
{5, 4, 3, 2, 20},
{25, 24, 23, 22, 21},
{6, 7, 8, 9, 10},
{15, 14, 13, 12, 11}
};
int i, j;
for (i = 0; i < 5; i++) {
for (j = 0; j < 5; j++)printf("%4d", a[i][j]);
printf("\n");
}
process2(a);
printf("\n");
for (i = 0; i < 5; i++) {
for (j = 0; j < 5; j++)printf("%4d", a[i][j]);
printf("\n");
}
getchar();
}
引用回帖:
Originally posted by
zyj8119
at 2010-11-11 22:52:25:
我也感觉有问题,但是找不出在哪里,这个就是答案的程序。。。。
赞
一下
(1人)
回复此楼
高级回复
9楼
2010-11-12 00:30:18
已阅
回复此楼
关注TA
给TA发消息
送TA红花
TA的回帖
查看全部 13 个回答
生活很无奈
银虫
(初入文坛)
应助: 0
(幼儿园)
金币: 279.5
帖子: 44
在线: 21小时
虫号: 1140838
zyj8119(金币+5):感谢跟进。。。。 2010-11-11 22:53:29
这个程序本身就有问题啊!
最后一个循环里 if(i==n[t]) 就有问题,这里的n[t]无意义啊!!!!
赞
一下
回复此楼
2楼
2010-11-11 22:24:42
已阅
回复此楼
关注TA
给TA发消息
送TA红花
TA的回帖
wangww2011
木虫
(著名写手)
程序强帖: 13
应助: 11
(小学生)
金币: 4023.1
帖子: 1915
在线: 1537.1小时
虫号: 772953
lz这个题目不太清楚啊,是把25个数据中的最大放在中间,25个中最小的放在四个脚上其他的不管吗?
赞
一下
回复此楼
3楼
2010-11-11 22:28:02
已阅
回复此楼
关注TA
给TA发消息
送TA红花
TA的回帖
zyj8119
木虫
(著名写手)
应助: 65
(初中生)
贵宾: 0.003
金币: 915.1
帖子: 2936
在线: 1329.4小时
虫号: 664177
引用回帖:
Originally posted by
wangww2011
at 2010-11-11 22:28:02:
lz这个题目不太清楚啊,是把25个数据中的最大放在中间,25个中最小的放在四个脚上其他的不管吗?
最小的四个数放在四个角上。。。
赞
一下
回复此楼
4楼
2010-11-11 22:29:31
已阅
回复此楼
关注TA
给TA发消息
送TA红花
TA的回帖
查看全部 13 个回答
如果回帖内容含有宣传信息,请如实选中。否则帐号将被全论坛禁言
普通表情
龙
兔
虎
猫
高级回复
(可上传附件)
百度网盘
|
360云盘
|
千易网盘
|
华为网盘
在新窗口页面中打开自己喜欢的网盘网站,将文件上传后,然后将下载链接复制到帖子内容中就可以了。
信息提示
关闭
请填处理意见
关闭
确定