您的位置:首页 > 编程语言 > C语言/C++

用C语言输出一个菱形

2018-03-12 20:07 483 查看
相信大家都见到过这种题目,以下分享我个人的做法,希望大家能有所建议或者能帮助到大家。
看到题目肯定是需要观察的,首先算出空格以及星号的规律,把菱形分为上下两部分打印。
上半部分规律:星号数目是行数的二倍减一,空格数是上半部分总行数减去它所在的行号;
下半部分规律:从下半部分开始算起,每行星号数是2*(line-1-i)-1,空格数目为它的行号加一。#define _CRT_SECURE_NO_WARNINGS 1
//输出菱形
#include <stdio.h>
int main()
{
int i = 0;
int j = 0;
int line = 0;
int n = 0;
printf("菱形上半部分行数为:");
scanf("%d",&line);
//上半部分
for (i = 0; i < line; i++)
{
for (n = 0; n < line - 1 - i;n++)
{
printf(" ");
}
for (j = 0; j < 2 * i + 1; j++)
{
printf("*");
}
printf("\n");
}
//下半部分
for (i = 0; i < line - 1; i++)
{
for (n = 0; n < i + 1; n++)
{
printf(" ");
}
for (j = 0; j < 2 * (line - 1 - i) - 1; j++)
{
printf("*");
}
printf("\n");
}
getchar();
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: