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;}
推荐阅读
-
温酒看历史|孙权如何安排美貌的嫂子大乔?他的做法太无耻,孙策去世后
-
晴晴侃游戏|其实国服的玩家都跑去玩另一个版本!,魔兽世界都说TBC人气高
-
-
「科技漫阅媒」神舟精盾X57A1了解一下,十代i7、雷电3接口、全金属机身
-
-
甄子丹|超刚!甄子丹韩综上只讲中文,还故意强调春节是“中国年”
-
-
迈克尔-乔丹|公牛为乔丹建雕像,湖人为魔鲨科建,那骑士和勇士会为詹库建吗?
-
-
穿搭|阿迪达斯发布巴塞尔2020/21赛季主客场球衣
-
大众网|打造智能制造新名片!张术平到高新区中国长城自主创新基地调研
-
澎湃新闻|今天上海近3万人参加法考比去年多20%,最年长考生72岁
-
石墨烯|华为Mate40Pro将在10月发布,瀑布屏+石墨烯散热,六种颜色可选
-
台海网@首批返台居家检疫者叹网军煽动仇陆,有感而发
-
-
-
朱单伟|大衣哥一双儿女摆拍式健身,朱单伟一脸不情愿,朱雪梅还是那么胖
-
铁矿|本周澳洲巴西铁矿发运总量环比增加282.3万吨
-
大奇聊车|果然不是一家人不进一家门啊!,搞笑GIF趣图:这对夫妻太逗比了
-
趣事箩筐|不料跳车后摔伤,直接回家告状:大货车撞的,小孩扒车兜风38公里