当前位置:网站首页>字符菱形的代码
字符菱形的代码
2022-08-09 15:05:00 【我好闲*】
//打印菱形
//将它看作两个三角行的拼凑,一个三角行+去掉这个三角行的最低行的倒置
// 先求上三角行的总行数n1=(row/2+1) row为菱形的总行数
// 上三角形的输出逻辑
// *的数量随行的规律: n1为上三角行总行数 i为第几行 i初始化为1 i--=>n1 *的数量:2*i-1
// 空格的数量随行的规律: n1为上三角行总行数 i为第几行 i初始化为1 i--=>n1 空格数量:n1-i
//下三角形(去掉这个三角行的最低行的倒置)的输出逻辑
//下三角行总行数n2=row/2 row为菱形的总行数
//下三角行输出逻辑
//*的数量随行的规律: n2为下三角形总行数 i初始化为num/2 i--=>0 *的数量:2*i-1
//空格的数量随行的规律: n2为下三角形总行数 i初始化为num/2 i--=>0 空格的数量:n1-i
//打印菱形
//将它看作两个三角行的拼凑,一个三角行+去掉这个三角行的最低行的倒置
// 先求上三角行的总行数n1=(row/2+1) row为菱形的总行数
// 上三角形的输出逻辑
// *的数量随行的规律: n1为上三角行总行数 i为第几行 i初始化为1 i--=>n1 *的数量:2*i-1
// 空格的数量随行的规律: n1为上三角行总行数 i为第几行 i初始化为1 i--=>n1 空格数量:n1-i
//下三角形(去掉这个三角行的最低行的倒置)的输出逻辑
//下三角行总行数n2=row/2 row为菱形的总行数
//下三角行输出逻辑
//*的数量随行的规律: n2为下三角形总行数 i初始化为num/2 i--=>0 *的数量:2*i-1
//空格的数量随行的规律: n2为下三角形总行数 i初始化为num/2 i--=>0 空格的数量:n1-i
#include <stdio.h>
int main()
{
char s = '\0';
int row = 0; //总行数
scanf("%c %d", &s, &row); //输入字符和总行数
int i = 0, black = 0, k = 0; //black为空格变量名
int n1 = row / 2 + 1; //上三角行行数
int n2 = row / 2; //下三角形行数
//打印出上三角行图形
for (i = 1;i <=n1;i++)
{
for (black = 1;black <= n1 - i;black++)
{
printf(" ");
}
k = 1;
while (k <= 2 * i - 1)
{
printf("*");
k++;
}
printf("\n");
}
//打印出下三角形图形
for (i = n2;i >= 0;i--)
{
for (black = 1;black <= n1 - i;black++)
{
printf(" ");
}
k = 1;
while (k <= 2 * i - 1)
{
printf("*");
k++;
}
printf("\n");
}
return 0;
}
写代码一定要加适当的注释,这不仅有利于他人观看,也有利于自己后期检查。
该代码的测试环境为CodeBlocks,希望这篇文章对你有帮助
边栏推荐
- Heap series_0x08: NT heap debug support_Discover now debug support (DPH)
- 保姆级教程:写出自己的移动应用和小程序(篇四)
- List,Set,Map,Queue,Deque,Stack遍历方式总结
- QT程序设计多人聊天室(基于QT、sqlite3、TCP/IP)
- 重启网卡提示Bringing up interface eth0: Device eth0 does not seem to be present,delaying initialization.
- 学编程的第十天
- 动态规划套题:零钱兑换、完全平方数
- VRRP详解与配置实例
- 2022高教社杯思路汇总A题B题C题D题
- 2022华数杯建模A题思路解析
猜你喜欢
随机推荐
学编程的第十天
VMware 虚拟机添加 2 张网卡 设置 NAT 与 桥接网络
“泰迪杯”数据分析职业技能大赛B题 学生校园消费行为分析---复盘
yum安装mariadb数据库之后启动时提示 Failed to start mariadb.service: Unit not found
2022高教社杯 国赛数学建模 D题思路
2022国赛数学建模思路汇总A题B题C题D题 高教社杯
2022高教社杯思路汇总A题B题C题D题
超文本链接
重启网卡提示Bringing up interface eth0: Device eth0 does not seem to be present,delaying initialization.
canvas学习(一)
Dolphin Scheduler 2.x版本部署篇
微信小程序学习(二)
布隆过滤器及LRU Cache的实现
客户端媒体引擎框架
typescript学习(二)
字典树、并查集相关:实现Trie、搜索推荐系统、朋友圈、被围绕的区域(未做) ...
第四章:使用本地地理空间数据(4.1-4.5)
List,Set,Map,Queue,Deque,Stack遍历方式总结
华为防火墙相关命令
软件测试面试题--银行面试