1.输出由*组成的菱形
*
**
***
****
***
**
*
这道题的思路就是将这个菱形看成上下两个部分,属于运用循环语句编写,寻找空格和*之间的规律,比如第一行前面是空格有一个*,第二行减少一个空格加一个*如此循环。
#include<stdio.h>
int main()
{
int line = 0; //定义一个整形变量line行数。假定line为7
int i = 0; //定义整形变量i
scanf_s("%d", &line); //输入行数
for (i = 0; i < line; i++) //【上半部分的打印】for循环,i<行数;i++
{
int j = 0; //定义一个整形变量j
for (j = 0; j < line - i - 1; j++) //内嵌for循环【打印每一行】当i=0时输出第一行,j循环
{
printf(" "); //【打印空格】当i=0时,j<6,则输出6个空格
}
for (j = 0; j < 2 * i + 1; j++) //内嵌for循环
{
printf("*"); //【打印*】i等于0,输出一个*,循环
}
printf("\n");
} //【打印下半部分】
for (i = 0; i < line - 1; i++)
{
int j = 0;
for (j = 0; j < i + 1; j++)
{
printf(" ");
}
for (j = 0; j < 2 * (line - 1 - i) - 1; j++)
{
printf("*");
}
printf("\n");
}
return 0;
}