输入两个数,第一个数决定一个nXn的矩阵
来源:互联网 发布:mac怎么连接打印机 编辑:程序博客网 时间:2024/05/22 13:07
输入两个数,第一个数决定一个nXn的矩阵,第二个数决定从1开始赋值,赋值的上限
比如:
输入:5 18
输出:p q
1 2 3 4 5
16 17 18 0 6
15 0 0 0 7
14 0 0 0 8
13 12 11 10 9
#include <stdio.h>
#define RIGHT 1
#define DOWN 2
#define LEFT 3
#define UP 4
int main(int argc, const char * argv[]) {
int a[20][20]={};
int n, m;
scanf("%d%d", &n,&m);
if (n<1||m<1||m>n*n||n>20) {
return -1;
}
int type=RIGHT;//1:从左往右赋值 2:从上往下赋值 3:从右往左赋值4:从下往上赋值
int p=0,q=0;
int s1=n-1;
int s2=n-1;
int s3=0;
int s4=1;
int i=1;
while (i<=m) {
a[p][q]=i;
switch (type) {
case RIGHT:
if (++q==s1) {//判断是否到边界
type = DOWN;
s1--;
}
break;
case DOWN:
if (++p==s2) {
type = LEFT;
s2--;
}
break;
case LEFT:
if (--q==s3) {
type = UP;
s3++;
}
break;
case UP:
if (--p==s4) {
type=RIGHT;
s4++;
}
break;
default:
break;
}
i++;
}
for (int i=0; i<n; i++) {
for (int j=0; j<n; j++) {
printf("%4d", a[i][j]);
}
printf("\n");
}
return 0;
}
- 输入两个数,第一个数决定一个nXn的矩阵
- 输入一个n ,然后在屏幕上打印出NxN 的矩阵!
- 给一个正整数N,打印NxN的蛇形矩阵(一) 之空间复杂度O(NxN)
- 给一个正整数N,打印NxN的蛇形矩阵(一) 之空间复杂度O(NxN)
- 输入整数序列,最小的和第一个数对换,最大的和最后一个数对换
- 顺时针打印nxn的矩阵
- 输入10个数,将其中最小的数与第一个对换,最大的数与最后一个对换
- 输入若干个数,将最小的数和第一个数交换,最大的数和最后一个数交换,然后输出
- zigzag数组:输入n,求一个nXn矩阵,规定矩阵沿45度递增,形成一个zigzag数组
- 输入10个整数,将其中最小的数与第一个数对换,把最大的数和最后一个数对换,写三个函数:1.输入10个数,2.进行处理.3输出10个数
- //1、输入10个整数,将其中最小的数与第一个数对换,把最大的数和最后一个数对换,写三个函数:1.输入10个数,2.进行处理.3输出10个数
- 输入10个整数,将其中最小的数与第一个数对换,把最大的数和最后一个数对换,写三个函数:1.输入10个数,2.进行处理.3输出10个数
- 输入10个整数,将其中最小的数与第一个数对换,把最大的数和最后一个数对换,写三个函数:1.输入10个数,2.进行处理.3输出10个数
- 输入10个整数,将其中最小的数与第一个数对换,把最大的数与最后一个数对换。写三个函数; ①输入10个数;②进行处理;③输出10个数。
- 输入10个整数,将其中最小的数与第一个数对换,把最大的数与最后一个数对换。写三个函数; ①输入10个数;②进行处理;③输出10个数。
- * 问题描述:输入10个整数,将其中最小的数与第一个数对换,把最大的数与最后一个数对换。写三个函数; ①输入10个数;②进行处理;③输出10个数。
- 输入10个整数,将其中最小的数与第一个数对换,把最大的数与最后一个数对换。写三个函数; ①输入10个数;②进行处理;③输出10个数
- (指针)输入10个整数, 把最小的与第一个数交换, 最大的与最后一个数交换
- 开源中国广州源创会分享
- 自定义组合控件
- 常用防反接电路
- Spring框架学习(二) 之 jar包
- Android系统中TouchEvent的传递流程以及相关函数返回值True和False对流程的影响
- 输入两个数,第一个数决定一个nXn的矩阵
- C语言结构体声明中冒号的使用(占位符) & C结构体的乱序初始化
- 滚动页面,然后再执行CSS3 动画
- keil4下同时用arm和51
- 【有图】android通过jdbc连接mysql(附文件)
- 当fscanf碰上nan
- String.valueOf(que[i]).getBytes()含义
- Tomcat的虚拟目录的创建步骤
- 插入数据获得主键,调用其他存储过程