打印 菱形

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

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;
}
相关推荐
qeen8712 小时前
【数据结构】二叉树相关经典函数C语言实现
c语言·数据结构·c++·笔记·学习·算法·二叉树
Hello.Reader14 小时前
ds4.c 深度解析为 DeepSeek V4 Flash 打造的本地推理引擎
c语言·开发语言
谙弆悕博士16 小时前
快速学C语言—— 第0章:C语言简介
c语言·开发语言·经验分享·笔记·程序人生·课程设计·学习方法
谙弆悕博士18 小时前
Lua学习笔记
c语言·开发语言·笔记·学习·lua·创业创新·业界资讯
qq38624619618 小时前
C语言中将数字转换为字符串的方法
c语言·格式化输出·字符串转换·sprintf·snprintf
LuminousCPP18 小时前
C 语言动态内存管理全解析:从基础函数到柔性数组与内存分区
c语言·经验分享·笔记·学习·柔性数组
Lazionr19 小时前
【栈与队列经典OJ】
c语言·数据结构
星恒随风19 小时前
C语言链表详解:从单链表到双向链表
c语言·开发语言·链表
bnmoel19 小时前
数据结构深度剖析顺序表:结构、扩容与增删查改全解析
c语言·数据结构·算法·顺序表
Season45020 小时前
C/C++的类型转换
c语言·开发语言·c++