C语言 棱形图案
目录
一、问题分析
上部分:
下部分:
二、代码演示

一、问题分析
如上图所示,我们可以将棱形进行拆解,分为上下两个部分。
上部分:

通过观察,我们得到 单边空格数 = 上半部分总行数 - 行数 - 1
而 星号 = 行数 × 2 + 1
所以我们设 line 为上半部分总行数 i 为行数 。
那么代码如下:
for(i=0; i<line; i++){//打印一行//打印空格int j = 0;for(j=0; j<line-1-i; j++){printf(" ");//打印空格}//打印*for(j=0; j<2*i+1; j++){printf("*");//打印星号}printf("\n");}
下部分:

通过观察,我们得知 下半部分的 单边空格数 = 行数
下半部分的 星号 = (下半部分总行数 - 行数 )× 2 - 1
于是我们可以设 下半部分总行数为 上半部分行数-1 也就是 line -1 , i为行数
那么代码如下:
for(i=0; i<line-1; i++){//打印一行int j = 0;for(j=0; j<=i; j++){printf(" ");//打印空格}for(j=0; j<2*(line-1-i)-1; j++){printf("*");//打印星号}printf("\n");}
二、代码演示
int main()
{int line = 0;int i = 0;scanf("%d", &line);//7//打印上半部分for(i=0; i<line; i++){//打印一行//打印空格int j = 0;for(j=0; j<line-1-i; j++){printf(" ");}//打印*for(j=0; j<2*i+1; j++){printf("*");}printf("\n");}//打印下半部分for(i=0; i<line-1; i++){//打印一行int j = 0;for(j=0; j<=i; j++){printf(" ");}for(j=0; j<2*(line-1-i)-1; j++){printf("*");}printf("\n");}return 0;
}
相关文章:
C语言 棱形图案
目录 一、问题分析 上部分: 下部分: 二、代码演示 一、问题分析 如上图所示,我们可以将棱形进行拆解,分为上下两个部分。 上部分: 通过观察,我们得到 单边空格数 上半部分总行数 - 行数 - 1 …...
在idea使用GitHub账号、Copilot异常
登录GitHub显示这样的信息: Invalid authentication data.Connection refused: connect Failed to initiate the GitHub login process. Please try again. 修改hosts(C:\Windows\System32\drivers\etc\hosts),添加以下参数即可…...
面试热题(反转字符串中的单词)
给你一个字符串 s ,请你反转字符串中 单词 的顺序。 单词 是由非空格字符组成的字符串。s 中使用至少一个空格将字符串中的 单词 分隔开。 返回 单词 顺序颠倒且 单词 之间用单个空格连接的结果字符串。 注意:输入字符串 s中可能会存在前导空格、尾随空格…...
Stable Diffusion WebUI 从零基础到入门
本文主要介绍Stable Diffusion WebUI的实际操作方法,涵盖prompt推导、lora模型、vae模型和controlNet应用等内容,并给出了可操作的文生图、图生图实战示例。适合对Stable Diffusion感兴趣,但又对Stable Diffusion WebUI使用感到困惑的同学&am…...
【uniapp】一文读懂app端安装包升级
一、前言 首先,在app端开发上线的过程中,会面临一个问题,就是关于app端的版本升级的问题。如果不做相关处理来引导用户的话,那么app就会出现版本没有更新出现的各种问题,我们常见的有在线升级和去指定地址下载安装两种…...
【算法题】2518. 好分区的数目
题目: 给你一个正整数数组 nums 和一个整数 k 。 分区 的定义是:将数组划分成两个有序的 组 ,并满足每个元素 恰好 存在于 某一个 组中。如果分区中每个组的元素和都大于等于 k ,则认为分区是一个好分区。 返回 不同 的好分区的…...
编写守护进程
守护进程是一个后台进程,当操作系统启动时就可以运行的进程,当操作系统结束时结束的进程,与终端无关。 结果 不想要了就杀死...
stable-diffusion-webui启动No Python at ‘C:\xxx\xxx\python.exe‘
打开webui.bat 把 if not defined VENV_DIR (set "VENV_DIR%~dp0%venv") 中的%~dp0venv改成自己python的安装路径就行获取直接set值即可 如 set VENV_DIRD:\Users\xxx\AppData\Local\Programs\Python\Python310 另外就是直接运行webui-user.bat也可以 如果运行…...
面试热题(合并两个有序列表)
将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。 合并链表这类型题也是比较经典的题了,因为链表是由指针相互指向而确定位置,所以我们只需要改变某些节点的指针便可以做到对链表进行排序 今天这个方法…...
QT生成Word PDF文档
需求:将软件处理的结果保存为一个报告文档,文档中包含表格、图片、文字,格式为word的.doc和.pdf。生成word是为了便于用户编辑。 开发环境:qt4.8.4vs2010 在qt的官网上对于pdf的操作介绍如下:http://qt-project.org/…...
阿里云服务器搭建WordPress建站教程基于Windows系统
本教程是使用阿里云服务器镜像系统选择的是Windows操作系统,手动安装WordPress博客网站全过程。本教程介绍如何在Windows操作系统的ECS实例上搭建WordPress网站。 目录 准备工作 搭建WordPress网站 解析WordPress网站域名 准备工作 创建Windows操作系统的ECS实…...
动态链接(8/11)
静态链接的缺点:生成的可执行文件体积较大,当多个程序引用相同的公共代码时,这些公共代码会多次加载到内存,浪费内存资源。 为了解决这个问题,动态链接对静态链接做了一些优化:对一些公用的代码࿰…...
Python 之 Http 获取网页的 html 数据,并去掉 html 格式等相关信息
Python之 Http 获取网页的 html 数据,并去掉 html 格式等相关信息 目录 Python之 Http 获取网页的 html 数据,并去掉 html 格式等相关信息...
干不完根本干不完,我也不想加班,快来围观时间管理大师
时间不够用,怎么办? 成功不靠加班。生产队的驴都不加班,你加什么班?到点就下班,该玩玩,该学习认真学,累了就睡觉。 你可以做任何事,但不必做所有事。 时间管理,不是管…...
常见设计模式
概念 设计模式是怎么解决问题的一种方案 常见的设计模式 单例模式 概念:保证一个类仅有一个实例,并提供一个访问它的全局访问点。 应用:项目封装个websocket用于大屏,redux,vuex都应用了单例模式的思想;…...
Android之版本号、版本别名、API等级对应关系(全)(一百六十二)
简介: CSDN博客专家,专注Android/Linux系统,分享多mic语音方案、音视频、编解码等技术,与大家一起成长! 优质专栏:Audio工程师进阶系列【原创干货持续更新中……】🚀 人生格言: 人生…...
Redis的简介,安装(Linux、Windows),配置文件的修改---详细介绍
Redis基础 文章目录 Redis基础1、Redis入门1.1、Redis简介1.2、Redis下载与安装1.2.1、在Linux系统安装Redis1.2.2、在Windows系统安装Redis 1.3、Redis服务启动与停止1.3.1、在Linux中启动服务1.3.2、在Windows中启动服务1.3.3、设置密码校验1.3.4、redis的远程连接 Redis是一…...
Vscode-工具使用
Vscode ,这玩意儿是开源的,以前用收费的破解版,过段时间就高版本不匹配,这次搞个不要钱的玩玩,记录使用心得 下载 下载地址:官网 点击下载,但是这里有个问题下载比较慢,解决办法&a…...
Ceph Reef版本 RBD 性能测试:80万写IOPS(10节点、60个NVMe SSD)
2023-05-16 08:30 发表于上海 摘自:https://mp.weixin.qq.com/s/mKkPElmCktoZaRk0m0IbqA 1、背景 Ceph 社区最近冻结了即将发布的 Ceph Reef 版本,今天我们研究一下 Ceph Reef 版本在 10 个节点、60 个 NVMe 磁盘的集群上的 RBD 性能。 在确保硬件没有…...
微信小程序调用map数据 并在wxml中对数组进行截取的操作
wxs文件的位置如图 实现数组截取 只保留五张图片 <wxs module"filter" src"./slicefunc.wxs"></wxs> <view class"wrap"><view class"search-box" bindtap"toSearch"><view class"v1"…...
使用Alpine配置WSL ssh门户抗
1. 哑铃图是什么? 哑铃图(Dumbbell Plot),有时也称为DNA图或杠铃图,是一种用于比较两个相关数据点的可视化图表。 它源于人们对更有效数据比较方式的持续探索。 在传统的时间序列比较中,我们通常使用两条折…...
【大模型可观测性生死线】:为什么你的Prometheus告警总在凌晨爆炸?7步阈值校准工作流曝光
第一章:大模型可观测性生死线:阈值设定的战略意义 2026奇点智能技术大会(https://ml-summit.org) 在大模型生产化落地过程中,可观测性并非仅关乎“能否看到指标”,而本质是“能否在失效前精准干预”。阈值设定正是这条生死线的锚…...
gitru:一个由 Rust 打造的零依赖 Git 提交信息校验工具雅
一、项目背景与核心价值 1. 解决的核心痛点 Navicat的数据库连接密码并非明文存储,而是通过AES算法加密后写入.ncx格式的XML配置文件中。一旦用户忘记密码,常规方式只能重新配置连接,效率极低。本项目只作为学习研究使用,不做其他…...
MSTP+VRRP企业级网络冗余架构实战解析
1. 为什么企业网络需要MSTPVRRP冗余架构 现代企业网络对稳定性的要求越来越高,任何网络中断都可能造成重大经济损失。记得去年我参与某制造企业的网络改造项目,就因为核心交换机单点故障导致生产线停工2小时,直接损失超过50万元。这正是我们需…...
时变分位数ΔCoVaR模型代码功能说明
时变动态分位数CoVaR、delta-CoVaR,分位数回归 △CoVaR测度 溢出效应 动态 Adrian2016基于分位数回归方法计算动态条件在险价值。 R语言代码,代码更换数据就能用,需要修改的地方都已标明,并且举例怎么修改 每一行代码都有注释&am…...
别再只用connectWifi了!微信小程序连接Wi-Fi的完整避坑指南(附getConnectedWifi实战代码)
微信小程序Wi-Fi连接全链路实战:从API陷阱到高可靠解决方案 每次看到connectWifi返回success却无法上网,或是onWifiConnected回调永远空数据时,作为开发者的你是否想砸键盘?微信小程序Wi-Fi模块的API设计就像个布满暗礁的航道——…...
AMD Ryzen系统调试三突破:从性能瓶颈到稳定优化的技术侦探指南
AMD Ryzen系统调试三突破:从性能瓶颈到稳定优化的技术侦探指南 【免费下载链接】SMUDebugTool A dedicated tool to help write/read various parameters of Ryzen-based systems, such as manual overclock, SMU, PCI, CPUID, MSR and Power Table. 项目地址: ht…...
基于遗传算法优化的BP神经网络多输入双输出预测模型技术说明
matlab的基于遗传算法优化bp神经网络多输入多输出预测模型,有代码和EXCEL数据参考,精度还可以,直接运行即可,换数据OK。 这个程序是一个基于遗传算法优化的BP神经网络多输入两输出模型。下面我将对程序进行详细分析。 首先&#x…...
逆向思维看保护:我是如何用VMProtect SDK给自己的工具软件“上锁”,并防止被破解的?
逆向思维构建软件护城河:VMProtect SDK实战防御手册 当我在深夜调试自己开发的工具软件时,突然冒出一个念头:如果我是黑客,会如何破解这个软件?这个看似简单的自问,彻底改变了我对软件保护的认知方式。传统…...
深夜告警炸裂?这份Linux故障排查“作战地图”请收好匚
先唠两句:参数就像餐厅点单 把API想象成一家餐厅的“后厨系统”。 ? 路径参数/dishes/{dish_id} -> 好比你要点“宫保鸡丁”这道具体的菜,它是菜单(资源路径)的一部分。 查询参数/dishes?spicytrue&typeSichuan -> …...
