qq_15070525 2015-06-01 08:27 采纳率: 100%
浏览 2227
已采纳

关于4阶魔阵的写法,即16宫格

16宫格的做法是,1到16依次写进4阶方阵中,然后将位置(1,1)与位置(4,4)上的对换,(2,2)与(3,3)上的对换。再将(1,4)与(4,1)对换,(2,3)与(3,2)对换。
基于这种思想我给出了一个程序,但是好像没有输出正确的结果。
#include

int main() {
int A[4][4] = {1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16};
int i,j;
for (i = 0; i < 2; i++) {
*(&A[0][0] + i * 4 + (i - 1)) = *(&A[0][0] + (4 - i) * 4 + (4 - i));//斜率为-1的对角线上数,(1,1)位子与(4,4)位子互换,(2,2)与(3,3)互换
*(&A[0][0] + i * 4 + (4 - i)) = *(&A[0][0] + (4 - i) * 4 + i);//斜率为1的对角线上的数,(1,4)与(4,1)互换,(2,3)与(3,2)互换,其他不变
}
for (i = 0; i < 4; i++) {
for (j = 0; j < 4; j++)
printf("%3d ", *(&A[0][0] + i * 4 + j));
printf("\n");
}
return 0;
}

  • 写回答

1条回答

  • devmiao 2015-06-01 08:33
    关注
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 #MATLAB仿真#车辆换道路径规划
  • ¥15 java 操作 elasticsearch 8.1 实现 索引的重建
  • ¥15 数据可视化Python
  • ¥15 要给毕业设计添加扫码登录的功能!!有偿
  • ¥15 kafka 分区副本增加会导致消息丢失或者不可用吗?
  • ¥15 微信公众号自制会员卡没有收款渠道啊
  • ¥100 Jenkins自动化部署—悬赏100元
  • ¥15 关于#python#的问题:求帮写python代码
  • ¥20 MATLAB画图图形出现上下震荡的线条
  • ¥15 关于#windows#的问题:怎么用WIN 11系统的电脑 克隆WIN NT3.51-4.0系统的硬盘