C/C++小程序学习:n*n魔方矩阵实现每行、每列、每一对角线上的元素之和相等
用一个程序实现n*n魔方矩阵中,每一行、每一列、每一对角线上的元素之和相等。
矩阵规律:
本程序只适合基数,解释如下:
N 为奇数时,此题中N设为5
(1) 将1放在第一行中间一列;
(2) 从2开始直到n×n止各数依次按下列规则存放:
按 45°方向行走,如向右上
每一个数存放的行比前一个数的行数减1,列数加1
(3) 如果行列范围超出矩阵范围,则回绕。
例如1在第1行,则2应放在最下一行,列数同样加1;
(4) 如果按上面规则确定的位置上已有数,或上一个数是第1行第n列时,则把下一个数放在上一个数的下面。
- #include<stdio.h>
- int main()
- {
- int a[100][100],x;/*初始化*/
- int i,j,m,n,temp;
- printf("输出魔方矩阵n=");
- scanf("%d",&x);
- while(x)
- {
- if(!(x%2))
- {
- printf("你输入了偶数,很遗憾本程序将退出");
- return 0;
- }
- else
- {
- for(i=0;i<x;i++)
- for(j=0;j<x;j++)
- a[i][j]=0;
- i=0;
- j=x/2;
- a[i][j]=1;
- for(temp=2;temp<=x*x;temp++)
- {
- m=i;
- n=j;
- i--;
- j++;
- if(i<0)
- i=x-1;
- if(j>=x)
- j=0;
- if(a[i][j]!=0)
- {
- i=m+1;
- j=n;
- }
- a[i][j]=temp;
- }
- }
- for(i=0;i<x;i++)
- {
- for(j=0;j<x;j++)
- printf("%4d",a[i][j]);
- printf("\n");
- }
- printf("输出魔方矩阵n=");
- scanf("%d",&x);
- }
- return 0;
- }
C/C++小程序学习:n*n魔方矩阵实现每行、每列、每一对角线上的元素之和相等相关推荐
- 微信小程序学习Course 8 本地缓存API
微信小程序学习Course 8 本地缓存API 本篇随笔主要介绍微信小程序本地缓存API函数,微信小程序可以在本地缓存一些关键词数据,每一条关键词对应一段字符串.微信小程序提供了以下API函数. 8. ...
- 一周小程序学习 第1天
2019独角兽企业重金招聘Python工程师标准>>> 一周小程序学习 第1天 今日正式开始小程序的学习! 对于刚上手的自学小白,技术选型是很重要的,这在一开始就决定了这条开发学习之 ...
- 微信小程序js数组初始化_微信小程序学习Course 3-2 JS数组对象学习
微信小程序学习Course 3-2 JS数组对象学习 本节主要介绍JS中的数组. 3-2.1 数组的声明 数组声明的方式多种,如下例.一般我们可以先创建一个空数组,然后再填充. var names = ...
- 小程序 pagescrollto_微信小程序学习笔记(三)-- 首页及详情页开发
一.常用组件 在上一个章节中讲解了封装请求数据的模块,在此处请求轮播图的数据 1.首页轮播图数据的请求以及渲染 1.1 轮播图数据的请求 pages/home/home.js import 2 使用组 ...
- C语言小案例_小程序学习(三)
小程序学习--页面设置 案例一 float页面布局效果 1.案例的整体介绍 设计一个小程序,利用float布局来实现页面的布局效果.有两种效果分别是上左右下和上左中右下. 2.案例的代码详解 (1) ...
- 小程序学习历程(二):注册小程序测试号
该文适合还没有微信小程序开发者账号,以及有了开发者账号同时还想注册一个测试账号的读者. 开发者测试账号推出的用意,主要是:方便我们在决定正式注册小程序账号之前,或者仅仅只是想体验一下小程序(或小游戏 ...
- 微信小程序学习笔记(1)
微信小程序学习笔记 1.小程序代码结构 2.逻辑层和视图层 3. 小程序的宿主环境(通信模型.运行机制.组件.API) 4. 数据绑定和事件绑定 1.小程序代码结构 当开发者新建一个工程时,项目文件包 ...
- 微信小程序学习(三):在微信开发者工具中,使用WeUI前端美化框架,微信小程序
微信小程序学习(三):在微信开发者工具中,使用WeUI 这里就是将WeUI导入到微信开发者工具中,我并没有使用多少样式,这里只是展示了一下怎么引用 网上有很多的方法,我绝大多数都没看懂,这里就是最简单 ...
- 微信小程序学习笔记一 + 小程序介绍 前置知识
微信小程序学习笔记一 1. 什么是小程序? 2017年度百度百科十大热词之一 微信小程序, 简称小程序, 英文名 Mini Program, 是一种不需要下载安装即可使用的应用 ( 张小龙对其的定义是 ...
最新文章
- C#学习笔记——数据库篇(1)
- Tomcat和Jetty对WebSocket的支持
- 【转载】jvm内存回收
- 存储过程/函数权限的问题解决(The user specified as a definer ('root'@'%') does not exist)...
- centos桌面系统使用记录
- 力扣(LeetCode)56
- 火狐浏览器安装插件“组件未验证无法安装”问题解决
- 《教程》使用STLINK烧录STM32程序
- idea 删除当一行或者选中行的快捷键
- mysql校对集工具_mysql字符集和校对规则(Mysql校对集)
- EndNote 毕业论文开题报告 批量导入 参考文献
- 1071: 数塔 (动态规划)
- 【西瓜创客】2022学年5月21日NOC大赛-初赛线上试题
- 如何用Python网络爬虫爬取网易云音乐歌曲
- [转]Cortex-a8 arm11 arm9 xscale powerpc 嵌入式处理器实测性能
- C#开发基于ESMTP协议的邮件发送系统经验总结
- Opencv inRang() 和HSV色彩空间表
- 小谈网易云音乐----API
- box-sizing:border-box的作用
- 一文看懂EtherCAT总线控制