使用C语言代码打印菱形的一种方法,具体思想是将菱形分为上下两部分,分别打印出上半部分和下半部分。上半部分又分为打印空格和星号,此时注意星号后面的空格不需要再打印。具体实现代码如下:
#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
#include<stdlib.h>
#include<stdio.h>
#include<stdlib.h>
int main()
{
int i = 0;
int j = 0;
int k = 0;
int line = 0;//菱形的行数
scanf("%d", &line);
//菱形上半部分
for (i = 1; i <= line; i++) //控制行数
{
for (j = 1; j <= line - i; j++) //控制空格数
{
printf(" ");
}
for (k = 1; k <= 2 * i - 1; k++) //控制*
{
printf("*");
}
printf("\n");//打印完每行的行数和空格数,打印一个换行符,以跳转到下一行
}
//菱形下半部分
for (i = 1; i <= line - 1; i++)//菱形下半部分一共有line-1行
{
for (j = 1; j <= i; j++)//控制空格数
{
printf(" ");
}
for (k = 1; k <= 2 * (line - 1 - i) + 1; k++)//控制*
{
printf("*");
}
printf("\n");//打印完每行的行数和空格数,打印一个换行符,以跳转到下一行
}
system("pause");
return 0;
}
{
int i = 0;
int j = 0;
int k = 0;
int line = 0;//菱形的行数
scanf("%d", &line);
//菱形上半部分
for (i = 1; i <= line; i++) //控制行数
{
for (j = 1; j <= line - i; j++) //控制空格数
{
printf(" ");
}
for (k = 1; k <= 2 * i - 1; k++) //控制*
{
printf("*");
}
printf("\n");//打印完每行的行数和空格数,打印一个换行符,以跳转到下一行
}
//菱形下半部分
for (i = 1; i <= line - 1; i++)//菱形下半部分一共有line-1行
{
for (j = 1; j <= i; j++)//控制空格数
{
printf(" ");
}
for (k = 1; k <= 2 * (line - 1 - i) + 1; k++)//控制*
{
printf("*");
}
printf("\n");//打印完每行的行数和空格数,打印一个换行符,以跳转到下一行
}
system("pause");
return 0;
}