打印 菱形

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

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;
}
相关推荐
mount_myj22 分钟前
Swap Digits
c语言
枕星而眠1 小时前
C 语言结构体硬核总结:内存对齐、#pragma pack、位段、柔性数组(面试+工程双指南)
c语言·后端·面试·柔性数组
三品吉他手会点灯1 小时前
C语言学习笔记 - 5.C概述 - C的应用领域
c语言·笔记·学习
mount_myj2 小时前
填数【C语言】
c语言
三品吉他手会点灯2 小时前
C语言学习笔记 - 4.C概述 - C的特点
c语言·笔记·学习
她说彩礼65万2 小时前
C语言 函数指针
c语言·开发语言·算法
算法鑫探3 小时前
贪心算法(C 语言实现)及经典应用
c语言·数据结构·算法·贪心算法
C语言小火车3 小时前
嵌入式实习面试问题:那个动态内存是怎么样分配的?
c语言·开发语言·c++·嵌入式硬件·面试
拾光Ծ3 小时前
【Linux系统编程】深入理解命名管道(Named Pipe):从原理到实战的完整指南
linux·c语言·linux系统编程·进程间通信·ipc·命名管道
HZ·湘怡3 小时前
任意位置 单链表 回归
c语言·链表