打印 菱形

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

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;
}
相关推荐
Felven12 小时前
C. Brr Brrr Patapim
c语言·开发语言
Zwawa15 小时前
嵌入式OLED表驱动菜单:用一张表、一个栈和一个窗口重写表驱动菜单
c语言·单片机·嵌入式
沐晓时光1 天前
C语言入门,内存函数知识讲解
c语言·开发语言
Zwawa1 天前
C语言函数指针与宏实战:从回调、表驱动菜单到X-Macro,讲透嵌入式代码解耦
c语言·单片机·嵌入式
David猪大卫1 天前
【C++修炼】map 和 set 的使用
c语言·开发语言·数据结构·c++·经验分享·笔记·学习
HPtiger1 天前
C++ 入门笔记:从 C 到 C++ 的核心过渡(命名空间、输入输出、缺省参数、重载、引用、内联)
c语言·c++·学习
安妮细水长流2 天前
ad7124
c语言·单片机
Zwawa2 天前
用两个按键做一个OLED菜单:先把选择和执行分开
c语言·单片机·嵌入式
心仪久了会沦陷2 天前
C语言数据结构入门——树与二叉树详解:概念、堆实现与链式遍历
c语言·数据结构·算法
Severus_black3 天前
【C++初阶】list使用及相关实现,思路顺滑流畅!
c语言·数据结构·c++·stl·list