要求编写算法输出下列图形:

 15   28   6   3
10   9   7   4
…………………………………………………………

有两个方法来进行表示,但是原理是一样的

由上面图形可知,左下角的数是图形中最大的数且数值为主对角线(即每行的最右边的数)之和
方法一:
由求和公式得出Kmax=m(m+1)/2

#include<stdio.h>
#define N 100
int main(){int m;int cnt=0;scanf("%d",&m);//打印出一个m*m的矩阵int str[N][N]={0};//创建一个N*N的二维数组并将初值赋0//该循环将二维数组填写好for(int i=0,j=0,k=1;k<=m*(m+1)/2;k++){str[i++][j++]=k;//把二维数组最外层的1~m填满if(i>=m){//排完最外层以后列数归零,开始计算第二层~第m层i=++cnt;j=0;}}//遍历二维数组,将各个数值打印出来for(int i=0;i<m;i++){for(int j=0;j<m;j++){if(str[i][j]){//当数值非0时打印printf("%-5d ",str[i][j]);//我定义的是左对齐,如果题目中有规定请修改此信息}else{//当数值为0时换行printf("\n");break;}}}
}

方法二:

#include<stdio.h>
#define N 100
int main(){int m;int n=1;scanf("%d",&m);//打印出一个m*m的矩阵int str[N][N]={0};//创建一个N*N的二维数组并将初值赋0//该循环将二维数组填写好for(int i=0;i<m;i++){//从最外层开始将二维数组对角线式填满for(int j=0;j<m-i;j++){//每内循环一次,要赋值的最外层单位数就会减一str[i+j][j]=n++;}}//遍历二维数组,将各个数值打印出来for(int i=0;i<m;i++){for(int j=0;j<=i;j++){printf("%-5d",str[i][j]);//当数值非0时打印}printf("\n");//从上到下每打印一行的数据,就换行}
}

由于最近在苦练Java,就再用Java敲一遍(卑微)

注释请参见上面C的代码,算法是一样的

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;public class Main {public static void main(String[] args) throws IOException {// TODO Auto-generated method stubBufferedReader bf = new BufferedReader(new InputStreamReader(System.in));int m = Integer.parseInt(bf.readLine());int n = 1;int[][] str = new int[100][100];for (int i = 0; i < m; i++) {for (int j = 0; j < m - i; j++) {str[i + j][j] = n++;}}for (int i = 0; i < m; i++) {for (int j = 0; j <= i; j++) {System.out.printf("%-5d", str[i][j]);}System.out.println();}}}

打印图形(1)(C+Java)相关推荐

  1. java打印 好看的图形_分享java打印简单图形的实现代码

    我们平时都是使用的画图工具进行简单图形的绘制,今天我们使用java打印一些简单的图形 实现代码如下 package test; /** * * @author hanzel * @打印图形 * */ ...

  2. java编程输出平行四边形_JAVA语言入门教程之打印图形实例——打印平行四边形...

    本文主要向大家介绍了JAVA语言入门教程之打印图形实例--打印平行四边形,通过具体的内容向大家展示,希望对大家学习JAVA语言有所帮助. 输出平行四边形: public class Parallelo ...

  3. Java 实例-打印图形

    Java 实例 – 打印菱形 输出指定行数的菱形. package com.example.yan.java打印图形;public class Main {public static void mai ...

  4. java语言打印图形_JAVA语言入门教程之打印图形实例——打印矩形

    本文主要向大家介绍了JAVA语言入门教程之打印图形实例--打印矩形,通过具体的内容向大家展示,希望对大家学习JAVA语言有所帮助. 输出矩形: public class Rect { public s ...

  5. java 使用*打印图形(菱形、平行四边形、三角形)

    打印图形 画图题的解决方法:首先是要确定要画图形的各个参数如图形的边数.打印的字符:然后确定每一行要输出的字符数和空格数(字符和空格数的初始值):从输出的字符数和空格数推测出是递增还是递减:最后是判断 ...

  6. 使用嵌套循环打印图形

    循环嵌套 循环里面可以嵌套循环,今天我们就用双层for循环打印图形和做出杨辉三角.打印图形时,把图形看做行,列.外层循环来控制行,内层控制列.如果是有星星还有空格的类型.模板就是 外层 for(int ...

  7. 经典算法_01 打印六芒星、打印图形练习

    距离蓝桥杯倒计时十天,猿猿的蓝桥杯突击之旅.突击一: 题目 打印图形 时间限制: 1.0s 内存限制: 512.0MB [问题描述] 小明刚学习完条件语句和循环语句,并且也打印了许多图形,比如菱形或者 ...

  8. C++扬帆远航——3(打印图形)

    /** Copyright (c) 2016,烟台大学计算机与控制工程学院* All rights reserved.* 文件名:tuxing.cpp* 作者:常轩* 完成日期:2016年3月15日* ...

  9. 2018年第九届省赛C/C++A组第5题——打印图形

    标题:打印图形 如下的程序会在控制台绘制分形图(就是整体与局部自相似的图形). 当n=1,2,3的时候,输出如下: 请仔细分析程序,并填写划线部分缺少的代码. #include <stdio.h ...

  10. java占位符打印_什么是 Java 构造器?

    构造器是编程的强大组件.使用它们来释放 Java 的全部潜力. -- Seth Kenlon(作者) 在开源.跨平台编程领域,Java 无疑(?)是无可争议的重量级语言.尽管有许多 伟大的跨平台 框架 ...

最新文章

  1. 收藏 | 使用Mask-RCNN在实例分割应用中克服过拟合
  2. R可视化雷达图(Radar Charts)
  3. python numpy.ones(shape, dtype=None, order=’C’) empty(shape[, dtype, order]) empty_like(a) 空数组 全1数组
  4. python和stata_从Python运行Stata do文件
  5. 优雅 | koa处理异常
  6. 预训练新范式!为什么Prompt会更有效?
  7. Unicode、UTF-8、UTF-16之间的关系
  8. 如何选择适合的微信号码开通状态检测工具
  9. 调用webservice服务方式总结
  10. 计算机管理格式化硬盘,如何将电脑硬盘格式化?笔记本硬盘格式化的操作方法...
  11. Fabric.js IText 手动设置斜体
  12. 线性代数 --- Gauss消元的部分主元法和完全主元法(补充)
  13. 2021-2027全球与中国豪华隐形眼镜市场现状及未来发展趋势
  14. 基于微信小程序的五子棋小程序(含简单人机)
  15. nas文件服务器访问限制,nas文件服务器远程访问
  16. 【笔记】MOS导通条件
  17. 蓝鹊生物国内首款新冠mRNA嵌合体疫苗获批临床
  18. Python根据身份证号计算年龄和退休时间并保存Excel文件
  19. stm31.js使用详解
  20. CPUID、SGX中使用CPUID

热门文章

  1. 如何查找历史线程阻塞原因_学习 Web Worker(js中的“多线程”)
  2. android浮于上方布局,android-在FrameLayout中使RecyclerView上方的视图...
  3. 关于解决vue.js中组件的template内容不能换行的问题
  4. 一些用过的优秀软件摘录
  5. Android开发之WebView加载自定义scheme报错net::ERR_UNKNOWN_URL_SCHEME(附带源码标题下面可点击下载)
  6. html元素data属性设置变量,HTML5 自定义属性 data-* 和 jQuery.data 详解
  7. java+mock+例子_java – 如何使用PowerMock和Mockito模拟枚举类的实例?
  8. PYTHON1.day21
  9. 科普向--详解JavaScript中的数据类型
  10. TODO:Laravel增加验证码