不借助二维数组,输出蛇形数组
2016-05-25 16:42
363 查看
求解思路:
1.利用子函数实现求一圈的输出
2.调用子函数,逐圈进行输出<img src="https://img-blog.csdn.net/20160525164419094?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" />
#include<stdio.h> #include<math.h> int getValue(int i, int j, int k, int n){ int value = 0, m; m = k; while(k >= 1){ value += (n - 2 * (k - 1)) * 4 - 4; k--; } n = n - m * 2; if(i == 0){ value += j + 1; }else if(i == n - 1){ value += 3 * n - j - 2; }else{ if(j == 0){ value += 4 * n - i - 3; }else if(j == n - 1){ value += n + i; } } return value; } int min(int a, int b){ if(a < b) return a; return b; } int main(){ int n; scanf("%d", &n); for(int i = 0; i < n; i++){ for(int j = 0; j < n; j++){ int d = min(i, min(j, min(n - 1 - i, n - 1 - j))); printf("%-5d", getValue(i - d, j - d, d, n)); } printf("\n"); } return 0; }
相关文章推荐
- 蛇形数组和“之”字形打印
- 蛇形数组
- 蛇形数组
- CSS选择器特殊性与重要性
- php 使用tcpdf库输出pdf
- Redis的主从复制
- MYSQL数据库学习笔记0523
- 被人试探了~
- 单例模式 基类泛型
- php 如何写入、读取word,excel文档
- Android之Adapter用法总结
- 机器学习 -- 二元逻辑回归实例
- linux系统中的crontab
- eclipse tomcat ClassNotFoundException
- appium 利用相对坐标解锁九宫格
- VC非模态窗口最小化到任务栏
- Spring 相关资源
- MD5加密示例
- shell的几种运算方法
- [置顶] 数据表分区策略及实现(二)