1203: 做幻方题目描述Apple最近迷上了做幻方 , Apple还是个中高手 , 只要你说个奇数N就能把N*N的幻方做出来 。 其实你可以比他做得更好的 。 Apple总是画得很乱 , 而你可以利用程序排得很整齐^_^ 幻方的要求:每一行 , 每一列 , 还有两条斜线上数字的和都相等.
输入每行一个奇数N(0< N < 30),输入0结束
输出输入一个奇数 , 输出一个幻方 , 顺序参照样板输出;同一列的数右对齐 , 数与数用一个空格分开;输出完以后加一个回车 。
样例输入510样例输出【1203: 做幻方】11 18 252910 12 19 213 46 13 20 222357 14 1617 2418 151代码#include#include#define N 30int sqr(int m);?int main(){int m;while(scanf("%d",}return 0;}?int sqr(int m){int a[N][N] = {0};int x=0, y=0;int times, p, q, fmt;int i, j;x = m / 2;y =m - 1;times = m * m;for(i = 0 ; i < times ; i++){a[y][x] = i + 1;p = x;q = y;x = x + 1;if(x == m)x = 0;?y = y + 1;if(y == m)y = 0;?if(a[y][x] != 0){x = p;y = q - 1;}}?fmt = log10(times);if(fmt == 0){for(i = 0 ; i < m ; i++){for(j = 0 ; j < m - 1 ; j++){printf("%d ", a[i][j]);}printf("%d", a[i][m - 1]);printf("\n");}}else if(fmt == 1){for(i = 0 ; i < m ; i++){for(j = 0 ; j < m - 1 ; j++){printf("%2d ", a[i][j]);}printf("%2d", a[i][m - 1]);printf("\n");}}else if(fmt == 2){for(i = 0 ; i < m ; i++){for(j = 0 ; j < m - 1; j++){printf("%3d ", a[i][j]);}printf("%3d", a[i][m - 1]);printf("\n");}}printf("\n");return 0;}
推荐阅读
-
烽火瞭望塔|美国最强对手终于浮出水面,若开战瞬间武装500万人,隐藏75年后
-
雷科技 手势导航增强,2021年Android十大预测:份额先升后降
-
武钢DW470-厚0.5的硅钢片,比重是多少啊?我们师傅说是7.655,对不对啊 硅钢片密度(硅钢片参数及型号
-
孩子爱吃的坚果芝麻糊,在家教你轻松做,甜香营养,解馋的美味
-
-
-
游戏智库|卧薪尝胆一度秋,育碧年内能否不落窠臼 脱胎换骨?
-
云凌雪|悔悟:她到死才知他的深情,睁眼重生,竟怀上他的双子,她乐开花
-
传染病■数说疫情0404:美国检测量增加38%,边际阳性率18%,病死率升至3%
-
-
孩子|虐爱文:她准备自我了断,却发现怀了他的孩子,她带球跑路……
-
-
游戏追随者■如今变成玩具,“耍帅”毕业必备!,魔兽世界曾经火极一时的武器
-
「猫眼娱乐V」小Jagger可爱依旧画面有爱尽显母子情深,39岁女演员刘芸带儿子看病
-
-
松子电影|张天爱穿黑色抹胸礼服,与韩国女星徐睿知“撞衫”,前者略胜一筹
-
「清华大学」2万多清华学生在硅谷不愿回国,看看中科大尹志尧,会不会脸红?
-
#科维托娃的女朋友#我以为他是个疯子,卡纳瓦罗回忆里皮经典一战:用完换人名额后
-
-