打印 菱形

打印一个任意奇数行的菱形

cs 复制代码
#define _CRT_SECURE_NO_WARNINGS

#include<stdio.h>
//打印菱形
int main()
{
	int n = 0;
	scanf("%d", &n);
	//打印上半部分
	int line = n / 2+1;
	int i = 0;
	for (i = 0;i < line;i++)//打印line行
	{
		int j = 0;
		for (j = 0;j < -i+line-1;j++)
		{
			printf(" ");
		}
		int k = 0;
		for (k = 0;k <( 2 * i + 1);k++)
		{
			printf("*");
		}
		printf("\n");
	}
	//打印下半部分
	for (i = 0;i < line - 1;i++)
	{
		int j = 0;
		for (j = 0;j < i+1;j++)
		{
			printf(" ");
		}
		int k = 0;
		for (k = 0;k < -2 * i + 2*line-3;k++)//输入为n是最多的*有2*line-1,所以比他少一行应该少两个*,就是2*line-3,带入差为2,递减的数列中。
		{
			printf("*");
		}
		printf("\n");
	}
	printf("\n");
	return 0;
}
相关推荐
Rabitebla13 分钟前
【数据结构】动态顺序表实现详解:从原理到接口设计(面试视角)
c语言·开发语言·数据结构·c++·面试·职场和发展
YSF2017_31 小时前
C语言-12-静态库制作
c语言·开发语言
✎ ﹏梦醒͜ღ҉繁华落℘3 小时前
Makefile(四)--gcc 和gdb
c语言·gnu·gcc和gdb
white-persist3 小时前
逆向入门经典题:从 IDA 反编译坑点到 Python 解题详细分析解释
c语言·开发语言·数据结构·python·算法·逆向·安全架构
01二进制代码漫游日记4 小时前
【C语言数据结构】之解锁双向链表(指定位置插入、删除节点、查找、销毁链表等操作)
c语言·数据结构·链表
代码中介商4 小时前
C语言进程管理与内存管理深度解析
c语言·开发语言
Severus_black5 小时前
算法题C——用队列实现栈/用栈实现队列
c语言·数据结构·算法·链表
叶子野格5 小时前
《C语言学习:数组》11
c语言·开发语言·c++·学习·visual studio
程序员zgh5 小时前
C++ decltype 关键字 详解
c语言·开发语言·c++
孬甭_5 小时前
自定义类型:结构体
c语言·开发语言