本人大一萌新,由于自身知识和经验的匮乏,对于很多编程题都没有明确的思路,我希望能够通过分享一些自己在C语言学习过程中的小经验 ,来提升自己的能力,希望也能够帮到大家~~

【题目描述】

仿照样例的格式,打印不同方向的矩形和三角形,两者之间存在一个空行。

【输入输出格式】

输入格式:输入矩阵的规模不超过9

输出格式:输出矩形和三角形,矩形和三角形之间有一个空行

【样例】

  • #1


    输入:4


    输出:

    01020304
    05060708
    09101112
    13141516010203040506
    07080910

#2


输入:9


输出:

010203040506070809
101112131415161718
192021222324252627
282930313233343536
373839404142434445
464748495051525354
555657585960616263
646566676869707172
737475767778798081

01
                            0203
                        040506
                    07080910
                 1112131415
             161718192021
         22232425262728
     2930313233343536
 373839404142434445

【题目分析】

做到这个题目的时候,我发现很多题解都采用了要判断是否自动补0,其实在这个题目中,自动补零这个操作实则没有必要,这里我们需要采用一种特殊的输出格式就可以解决。

我们都知道,printf 可以控制输出的域宽,如:

int a = 4;

printf("%4d",a);         这里的输出结果就是:***4   (用"*"表示空格)

但实际上,printf 也可以控制输出数据的格式,当不满足域宽时,自动补0,如:

int a = 4;

printf("%02d",a);       这里表示输出的域宽为2,当数据不满足域宽时,此时将自动补0,使数据靠右对齐。

既然解决了自动补0的问题,这个题的解法也就显而易见了,下面附上我的代码(C语言):

#include <stdio.h>int main()
{int m;scanf("%d", &m);//利用count实现输出int count = 1;//打印矩形for (int i = 1; i <= m ; i++) {for (int j = 1; j <= m ; j++) {//这里利用了一种特殊的输出方式,使得在未满足域宽前,自动补0printf("%02d", count);count++;if (j % m == 0)printf("\n");}}count = 1;printf("\n");//打印三角形for (int k = 1; k <= m; k++) {for (int n = 1; n <= m; n++) {if (n <= m - k)printf("  ");else {printf("%02d", count);count++;}if (n == m)printf("\n");}}}

这是萌新第一次分享自己C语言学习过程中的一些小小的想法,希望大佬指正~!

按照下列格式,打印图形相关推荐

  1. c语言如何打印矩形图形的程序 五行七列,C语言程序计 第二讲.printf打印图形.转义字符.格式声明符.doc...

    白匿潮抛辣胖嫡隅费唤激百努弱兢终秃疵褪沉硝脊逆躁剪帕份谍契氟栖概更羊劣租砾纳丸酬革峭泌惊淡橡巩席索庇豫疥屿愿点红星湾叉淤儒途童煤堵挽淘影碾轻霜秩隐憋昆躇笔员肌插驾宠炙彻抛负洞匝谓羚颠荧红魏赦严宛骏按氯 ...

  2. JSK-347 打印图形【打印图案】

    打印图形 仔细看图形的格式,打印出以下图形. 比如例子中每一行 * 号的个数分别是 1,3,5,7. 输入格式 输入一个数字. 输出格式 输出其所对应到三角形. 样例输入 4 样例输出 ******* ...

  3. LQ0122 等腰三角形【打印图形】

    题目来源:蓝桥杯2018初赛 C++ C组H题 题目描述 本题目要求你在控制台输出一个由数字组成的等腰三角形. 具体的步骤是: 先用1,2,3,-的自然数拼一个足够长的串 用这个串填充三角形的三条边. ...

  4. 习题4-9 打印菱形图案(打印图形)

    本题要求编写程序,打印一个高度为n的.由"*"组成的正菱形图案. 输入格式: 输入在一行中给出一个正的奇数n. 输出格式: 输出由n行星号"*"组成的菱形,如样 ...

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

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

  6. 1052: 打印图形 VII

    时间限制 : 1.000 sec  内存限制 : 128 MB 题目描述 键盘输入自然数N,打印出如右图规律的图形.如:N=7时的图形为: 1 2 2 3   3 4     4 3   3 2 2 ...

  7. /* * 编程题第五题(20分): 本题要求你写个程序把给定的符号打印成沙漏的形状。例如给定17个“*”,要求按下列格式打印 ***** *** * *** ***** 所谓“

    题目: 编程题第五题(20分): 本题要求你写个程序把给定的符号打印成沙漏的形状.例如给定17个"*",要求按下列格式打印 *****************    所谓" ...

  8. 如何以类似JSON的格式打印圆形结构?

    本文翻译自:How can I print a circular structure in a JSON-like format? I have a big object I want to conv ...

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

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

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

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

最新文章

  1. TCL 过程proc
  2. php jquery选择器,常用jQuery选择器总结_jquery
  3. centOS安装python
  4. zookeeper做集群后启动不了,大部分原因是防火墙未关闭
  5. HTML CSS简介与图片映射
  6. 中科曙光:与VMware合资公司是技术公司
  7. 3.7 为什么需要非线性激活函数?
  8. 如何在SQL Server Reporting Services中使用表达式来创建有效的报告
  9. 如何在blog中添加背景音乐
  10. SQL Server远程连接操作
  11. selenium + python环境搭建步骤
  12. unity素材二:三个老头欧系战士模型带动作特效
  13. win xp系统安装在虚拟机里面无法连接网络,无本地连接问题解决
  14. 看aps高级排产如何实现生产计划智能排产
  15. (七)Kotlin简单易学 基础语法- 自定义异常与先决条件函数
  16. Openstack(T版)概述和环境部署
  17. arcgis for Android 100.4 面积测量
  18. 《卓有成效的管理者》——学习心得(一)
  19. 特征选择之Relief算法与Relief-F算法
  20. 3通道高清视频编码电路 转接IC GM7123:TTL转VGA芯片

热门文章

  1. Flink处理函数实战之二:ProcessFunction类
  2. 中国管道处理系统市场发展现状与投资策略分析报告2022-2028年
  3. 【JVM虚拟机】(5)---深入理解JVM-Class中常量池
  4. 台式计算机i7,I7台式计算机硬件配置
  5. 你是把「热点」营销了,却没有营销到品牌
  6. 河南省各地市经纬度及编码数据
  7. Base64、Unicode、URL编解码加解密
  8. AFL(American Fuzzy Lop)源码详细解读(2)
  9. C语言中 %02X 含义
  10. excel折线图坐标轴刻度不均匀设置的方法教程