目录
代码要求
代码实现
代码要求
输入 整数line ,菱形的上半部分的长度就为line(动态变化的菱形)
菱形由 "*" 号构成
代码实现
#include<stdio.h>
int main()
{
// 上半长
int line = 0;
scanf("%d", &line);
//打印上半长
for (int i = 0; i < line; i++)
{
//打印每一行的空格
for (int j = 0; j < line - 1 - i; j++)
{
printf(" ");
}
//打印每一行的"*"
for (int k = 0; k < 2 * i + 1; k++)
{
printf("*");
}
//打印完每一行换行
printf("\n");
}
//打印下半长
for (int i = 0; i < line - 1; i++)
{
//打印每一行的空格
for (int j = 0; j < i + 1; j++)
{
printf(" ");
}
//打印每一行的"*"
for (int k = 0; k < (line - i - 1) * 2 - 1; k++)
{
printf("*");
}
//打印完每一行换行
printf("\n");
}
return 0;
}
代码解析:
菱形的 上半部分的长度为:line,那么 下半部分的长度就为:line - 1
画图辅助理解,从中找规律即可找到公式
代码验证:
当lien为偶数时:
当lien为奇数时: