输出菱形的程序填空题补充代码问题

news2024/11/17 0:44:53
                                       A
                                      BBB
                                     CCCCC
                                    DDDDDDD
                                      EEE
                                       F

如上图所示,补充以下代码,输出这个图形。

#include<stdio.h>
#define N 7//图案共N行 
#define L (80-N)/2//整个图案据屏幕左边L列,使其居中 
int main()
{
	char c='A';
	int i,j,p;
	for(i=1;i<=N;i++,    )
	{
		if(i<=(N+1)/2)
		{
			p=    ;
		}
		else
		{
			p=    ;
		}
		for(j=1;j<=L+    ;j++)
		{
			printf(" ");
		}
		for(j=1;j<=2*p-1;j++)
		{
			printf("%c",c);
		}
		printf("\n");
	}
	return 0;
}

         分析,首先直接看输出,明显第一个 for 循环中的两个 for 循环分别是输出空格和字符的,因此从输出字符的入手判断b的取值。

         显然,第 i行输出空格完成后的字符个数为1,3,5,7,5,3,1;if--else语句说明了对前四行和后三行p的值是不同的,前面四个p的值要满足2p-1分别等于1,3,5,7(p的值为1,2,3,4),后面三个p的值要满足2p-1分别等于5,3,1(p的值为3,2,1),说明p的值要与i联系,即if语句中        p=i; else 语句中p=N-i;

        接下来输出空格的 for 循环的 判断条件如何呢?第 i 行距离第L列的位置空格个数3,2,1,0,1,2,3;根据上面我们已经知道了p的值分别为1,2,3,4,3,2,1;与空格数的关系显然满足相加等于4的关系。说明 j<=L+(N+1)/2-p.

        最后面,第一个for循环中少了什么呢?这里有点难想到,不妨运算一遍输出发现字符是不会变化的,全部为A,因此,这个空所填的应该为控制字符变化的c++.

最终代码应为:

#include<stdio.h>
#define N 7//图案共N行 
#define L (80-N)/2//整个图案据屏幕左边L列,使其居中 
int main()
{
	char c='A';
	int i,j,p;
	for(i=1;i<=N;i++,c++)
	{
		if(i<=(N+1)/2)
		{
			p=i;
		}
		else
		{
			p=N-i;
		}
		for(j=1;j<=L+(N+1)/2-p;j++)
		{
			printf(" ");
		}
		for(j=1;j<=2*p-1;j++)
		{
			printf("%c",c);
		}
		printf("\n");
	}
	return 0;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/827294.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

(12)理解委托,反射,Type,EvenInfo,插件, 组合枚举,BindingFlags,扩展方法及重载,XML认识

一、复习委托事件 1、委托复习。 private delegate int MyDelegate(int a, int b); //1.定义委托类型private static void Main(string[] args){MyDelegate md new MyDelegate(AddDelegate);//2.声明委托变量int result md(1, 2);//3.调用委托Console.WriteLine(result);Cons…

运维作业4

一.简述静态网页和动态网页的区别。 静态页面资源特征 1. 处理文件类型&#xff1a;如.html、jpg、.gif、.mp4、.swf、.avi、.wmv、.flv等 2. 地址中不含有问号"&#xff1f;"或&等特殊符号。 3. 保存在网站服务器文件系统上的&#xff0c;是实实在在保存在服务器…

十进制、八进制、二进制、十六进制

十进制 每一位都有 0~9 十个数码&#xff0c;逢十进一 二进制 每一位仅有 0 和 1 两个数码&#xff0c;逢二进一 八进制 每一位都有 0~7 八个数码&#xff0c;逢八进一 十六进制 每一位都有 0~9、A(10)、B(11)、C(12)、D(13)、E(14)、F(15)&#xff0c;十六个数码&#…

路由动态选择协议之RIP(路由信息协议)

软件&#xff1a;cicso packet tracer 8.0 拓扑图&#xff1a;路由器&#xff1a;Router-PT、连接线&#xff1a;Serial DTE、连接口&#xff1a;Serial口 1、配置基础ip R1配置&#xff1a;虚拟接口——1.1.1.1&#xff1b;S3/0——192.168.1.1 R1(config)#int s3/0 R1(con…

SQL Server数据库 -- 索引与视图

文章目录 一、索引 聚集索引非聚集索引二、视图三、自定义函数 标量函数表值函数四、游标五、总结 前言 在学习完创建库表、查询等知识点后&#xff0c;为了更加方便优化数据库的存储和内容&#xff0c;我们需要学习一系列的方法例如索引与视图等等&#xff0c;从而使我们更加…

快手头部主播合体,二驴祁天道直播首秀销售额破亿

2023年刚刚过半&#xff0c;直播江湖突然生变。 快手头部娱乐主播「二驴」与快手户外主播第一人「祁天道」宣布“合体”&#xff0c;两者加总的粉丝量接近1亿&#xff0c;又一个“超级网红IP”诞生。 ▲图源&#xff1a;二驴的、祁天道快手截图 从白手起家的草根&#xff0c;…

语义检索系统【四】:基于ERNIE-Gram的Pair-wise和基于RocketQA的CrossEncoder训练的单塔模型实现数据精排

搜索推荐系统专栏简介:搜索推荐全流程讲解(召回粗排精排重排混排)、系统架构、常见问题、算法项目实战总结、技术细节以及项目实战(含码源) 专栏详细介绍:搜索推荐系统专栏简介:搜索推荐全流程讲解(召回粗排精排重排混排)、系统架构、常见问题、算法项目实战总结、技术…

启动Flink显示初始化状态怎么解决?

启动Flink显示初始化状态怎么解决&#xff1f; Flink On Yarn模式 问题 flnk任务在跑的过程中&#xff0c; 有时候任务停掉了 &#xff0c;不过我有 定时任务&#xff0c;可以把失败的flink任务拉起来&#xff0c;但是因为最新的checkpoint做失败了&#xff0c;导致脚本无法拉…

【leetcode经典简单题】自食用||删除链表中倒数第k个结点

step by step. 题目&#xff1a; 给你一个链表&#xff0c;删除链表的倒数第 n 个结点&#xff0c;并且返回链表的头结点。 示例 1&#xff1a; 输入&#xff1a;head [1,2,3,4,5], n 2 输出&#xff1a;[1,2,3,5]示例 2&#xff1a; 输入&#xff1a;head [1], n 1 输出&a…

C# Blazor 学习笔记(8):row/col布局开发

文章目录 前言相关文章代码row和col组件B_rowB_col结构 使用 前言 可能是我用的element ui和 uView这种第三方组件用的太多了。我上来就希望能使用这些组件。但是目前Blazor目前的生态其实并不完善&#xff0c;所以很多组件要我们自己写。 我们对组件的要求是 我们在组件化一共…

人工智能科研经验——人工智能顶会审稿人科研方法分享

人工智能顶会审稿人科研方法分享 前言 1、本教程主要记录人工智能科研方面的经验积累。 Question&#xff1a;科研是什么&#xff1f; Anwser&#xff1a;科研是【进行观察—>定义问题—>研究问题—>发展假设—>设计实验—>收集和分析结果—>构建结论—>进…

微服务架构的模式介绍

1.微服务架构模式方案 用Scale Cube方法设计应用架构&#xff0c;将应用服务按功能拆分成一组相互协作的服务。每个服务负责一组特定、相关的功能。每个服务可以有自己独立的数据库&#xff0c;从而保证与其他服务解耦。 1.1 聚合器微服务设计模式 聚合器调用多个服务实现应用程…

74HC245芯片的用途

双 P 沟道增强型 MOS 管---D74HC245 目录 双 P 沟道增强型 MOS 管---D74HC245 概述与特点 主要特性 应用领域 管脚定义 管脚定义说明 逻辑框图 直流电气参数 直流特性 交流特性 封装 概述与特点 &#xfffd; 概述 D74HC245 是一种三态输出、八路信号收发器,主要应用…

【安装Tomcat,web站点部署】

Tomcat部署 第一种安装 yum install tomcat.noarch -y yum install tomcat-webapps.noarch -y #启动脚本 [rootlocalhost ~]# systemctl start tomcat这时可以通过IP地址端口访问 第二种安装 点击此处找到apache-tomcat-8.5.70.tar.gz 官网下载JDK #先安装JDK [rootlocalh…

Android安卓实战项目(5)---完整的健身APP基于安卓(源码在文末)可用于比赛项目或者作业参考中

Android安卓实战项目&#xff08;5&#xff09;—完整的健身APP&#xff08;源码在文末&#x1f415;&#x1f415;&#x1f415;&#xff09;可用于比赛项目 一.项目运行介绍 1.大致浏览 【bilibili视频】 https://www.bilibili.com/video/BV1uX4y177iR/? &#xff08;1&…

MySQL语法2

DQL语句介绍 DQL是数据查询语言&#xff0c;用来查询数据库中表的记录 DQL-基本查询语句 SELECT 字段列表 FROM 表名列表 WHERE 条件列表 GROUP BY 分组字段列表 HAVIMG 分组后条件列表 ORDER BY 排列字段列表 LIMIT 分页参数 讲解过程&#xff1a;基本查询、条件查询…

Dockerfile构建apache镜像

创建工作目录 [rootlocalhost ~]# mkdir tomcat [rootlocalhost ~]# cd tomcat/ 编写配置文件 [rootlocalhost tomcat]# cat Dockerfile #基于的基础镜像 FROM centos:7 #镜像作者信息 MAINTAINER liu <wewed163.com> #安装相关依赖包 RUN yum install -y wget net-…

SpringBoot之logback-spring.xml详细配置

《logback官网》 各种指导文件&#xff0c;有空自己去看&#xff0c;比如&#xff1a;我们需要调整的是布局&#xff0c;直接看Layouts。 pom.xml <!-- 环境配置 --><profiles><profile><id>dev</id><properties><spring.profiles.a…

提交项目纳品数据时,生成目录结构树文档readme.txt方法

之前在日企工作时&#xff0c;学到了一个生成目录结构树的方法。最近&#xff0c;我提交了项目纳品压缩包给客户&#xff0c;在里面附带了一个 "readme.txt" 文档&#xff0c;其中包含了整个项目的目录结构。客户对这个方法十分赞赏&#xff0c;分享一下方法。 在提交…