空心正方形图案(C语言)

描述

KiKi学习了循环,BoBo老师给他出了一系列打印图案的练习,该任务是打印用“*”组成的“空心”正方形图案。

输入描述:

多组输入,一个整数(3~20),表示输出的行数,也表示组成正方形边的“*”的数量。

输出描述:

针对每行输入,输出用“*”组成的“空心”正方形,每个“*”后面有一个空格。

=======================================================================================================

//多组输入,一个整数(3~20),表示输出的行数,也表示组成正方形边的“*”的数量
#include <stdio.h>

void p_f1()
{
	printf("*");
}

void p_f2()
{
	printf(" ");
}

void pattern(int rows)
{
	int i = 0, j = 0;
	int left = 1;
	int right = rows;
	for (i = 1; i <= rows; i++)
	{
		for (j = 1; j <= rows; j++)
		{
			if ((i == left) || (i == right))
			{
				p_f1();
			}
			else
			{
				if ((j == left) || (j == right))
				{
					p_f1();
				}
				else
				{
					p_f2();
				}
			}
		}
		printf("\n");
	}
}

int main()
{
	int columns = 0;
	printf("请输入所形成正方形的边长:>");
	scanf("%d", &columns);
	pattern(columns);
	return 0;
}
输出:
请输入所形成正方形的边长:>9
*********
*       *
*       *
*       *
*       *
*       *
*       *
*       *
*********

#练习题目,谁还有更好的解法##C语言基础练习##C语言#
全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务