最近在回顾一下以前的一些基础题,故重新写了一下这个实验题

代码如下

#include<stdio.h>
void function_up(int n)//the uppper part of the diamond
{
	int j=1;//the number of the char "*" in the first line is 1
	int m=n;//the number of the char "*" in the middle line is n
	while(n>0)
	{
		for(int i=1;i<=m-j;i++)//print the blank space,first
		{
			printf(" ");
		}
		for(int k=1;k<=j;k++)//print the char "*"
		{
			printf("*");
			printf(" ");
		}
		printf("\n");
		j++;
		n--;
	}
}
void function_low(int n)//the lower part of the diamond
{
	int j=1;//the number of the char "*" in the first line is 1
	int m=n;//the number of the char "*" in the middle line is n
	while(n>0)
	{
		for(int k=1;k<=j;k++)
		{
			printf(" ");
		}
		for(int i=1;i<=m-j;i++)
		{
			printf("*");
			printf(" ");
		}
		printf("\n");
		j++;
		n--;
	}
}
int main()
{
	int n=0;
	scanf("%d",&n);
	if(n%2==1)
	{
		function_up(n);
		function_low(n);
	}
	return 0;
}

C语言输出菱形

相关文章: