距阵的算法
来源:互联网 发布:触摸屏展示软件 编辑:程序博客网 时间:2024/04/27 20:15
6. 矩阵中填数. 当给出 N*N 的矩阵,要求用程序填入下列形式的数:
① 倒填,例如N=5 ② 蛇形填数 ③ 回转填数
┌─┬─┬─┬─┬─┐ ┌─┬─┬─┬─┬─┐ ┌─┬─┬─┬─┬─┐
│25│24│23│22│21│ │ 1│ 3│ 4│10│11│ │ 1│16│15│14│13│
├─┼─┼─┼─┼─┤ ├─┼─┼─┼─┼─┤ ├─┼─┼─┼─┼─┤
│20│19│18│17│16│ │ 2│ 5│ 9│12│19│ │ 2│17│24│23│12│
├─┼─┼─┼─┼─┤ ├─┼─┼─┼─┼─┤ ├─┼─┼─┼─┼─┤
│15│14│13│12│11│ │ 6│ 8│13│18│20│ │ 3│18│25│22│11│
├─┼─┼─┼─┼─┤ ├─┼─┼─┼─┼─┤ ├─┼─┼─┼─┼─┤
│10│ 9│ 8│ 7│ 6│ │ 7│14│17│21│24│ │ 4│19│20│21│10│
├─┼─┼─┼─┼─┤ ├─┼─┼─┼─┼─┤ ├─┼─┼─┼─┼─┤
│ 5│ 4│ 3│ 2│ 1│ │15│16│22│23│25│ │ 5│ 6│ 7│ 8│ 9│
└─┴─┴─┴─┴─┘ └─┴─┴─┴─┴─┘ └─┴─┴─┴─┴─┘
小题1:
#include <stdio.h>
int main(void)
{
int x,y,n,count=0;
scanf("%d",&n);
x=y=n*n;
for(int i=0;i<x;i++)
{
if(count==n)
{
printf("/n");
count =0;
}
printf("%d ",y);
count++;
y--;
}
return 0;
}
小题2:
#include <stdio.h>
#define N 5
int main()
{
int i=0,j=0,k,num[N][N];
int direct=1;//为1时左下,为-1时右上
for(k=1;k<=N*N;k++)
{
num[i][j]=k;
i=i+direct;
j=j-direct;//左下走,i+1,j-1;右上走,i-1,j+1;
if(j<0&&i<N)
{
j=0;
direct=-direct;
}
else if(j==N)
{
i=i+2;
j=j-1;
direct=-direct;
}
else if(i<0&&j<N)
{
i=0;
direct=-direct;
}
else if(i==N)
{
i=i-1;
j=j+2;
direct=-direct;
}
}
for(i=0;i<N;i++)
{
for(j=0;j<N;j++)
printf("%3d",num[i][j]);
printf("/n");
}
return 0;
}
小题3:
#include <stdio.h>
#define N 5
int A[5][5];
int main()
{
int i,j,x,y,z,count;
count =N/2;
x=0;
y=5;
z=1;
A[count][count] =N*N;
while(count>0)
{
for(i=x;i<y;i++)
{
A[i][x] =z;
z++;
}
for(i=x+1;i<y;i++)
{
A[y-1][i] =z;
z++;
}
for(i=y-2;i>x-1;i--)
{
A[i][y-1] =z;
z++;
}
for(i=y-2;i>x;i--)
{
A[x][i] =z;
z++;
}
x++;
y--;
count--;
}
for(i=0;i<N;i++)
for(j=0;j<N;j++)
{
printf("%d ",A[i][j]);
if(j==4)
printf("/n");
}
return 0;
- 距阵的算法
- 【算法】算法的艺术
- [算法]算法的乐趣
- 【算法理论】拟阵的理解
- 任意阶魔方阵算法的实现
- [算法]求最大公约数的算法
- 遗传算法的一般算法
- 一个不是算法的算法
- 算法(冒泡排序的算法)
- 算法(选择排序的算法)
- 【算法学习】算法的复杂度
- 算法-树的相关算法
- 算法和算法的衡量
- 算法 常见的排序算法
- 算法 常见的排序算法
- RSA算法的相关算法
- 算法的定义及算法的复杂度
- 算法基础系列-算法的的选择
- 我从编程中悟出的八个字
- 黑白颠倒
- 翻硬币
- 玩火柴
- AZ字符串
- 距阵的算法
- 拉丁方阵
- N*N 的方阵
- static的作用
- const 的作用
- 白话设计模式——Abstract Factory
- 数据到客户端
- c# 返回上几页(history.go(-n))
- 排序问题的简单实现!