1.凹凸字形

请按照输入的奇偶性来输出不同的图形,在输入为奇数时,输出‘凸’字形,在输入为偶数时,输出‘凹’字形。

具体形状与设计,如下:

例如在n=10输出如图所示的“凹”字型,标明的数字为所在区域的行数限制。

输入描述

一行,整数n。

输出描述

上述的规律性字符串。

样例输入

15

样例输出

数据范围

4<=n<=999

测试输入期待的输出时间限制内存限制额外进程
测试用例 1以文本方式显示
  1. 4↵
以文本方式显示
  1. ** **↵
  2. ** **↵
  3. *****↵
  4. *   *↵
  5. *****↵
1秒64M0
测试用例 2以文本方式显示
  1. 27↵
以文本方式显示
  1.             ***************↵
  2.             *             *↵
  3.             *             *↵
  4.             *             *↵
  5.             *             *↵
  6.             *             *↵
  7.             *             *↵
  8.             *             *↵
  9.             *             *↵
  10.             *             *↵
  11. *************             *************↵
  12. *                                     *↵
  13. *                                     *↵
  14. *                                     *↵
  15. *                                     *↵
  16. *                                     *↵
  17. *                                     *↵
  18. *                                     *↵
  19. *                                     *↵
  20. *                                     *↵
  21. *                                     *↵
  22. *                                     *↵
  23. *                                     *↵
  24. ***************************************↵
1秒64M0
测试用例 3以文本方式显示
  1. 36↵
以文本方式显示
  1. ******************                 ******************↵
  2. *                *                 *                *↵
  3. *                *                 *                *↵
  4. *                *                 *                *↵
  5. *                *                 *                *↵
  6. *                *                 *                *↵
  7. *                *                 *                *↵
  8. *                *                 *                *↵
  9. *                *                 *                *↵
  10. *                *                 *                *↵
  11. *                *                 *                *↵
  12. *                *                 *                *↵
  13. *                *                 *                *↵
  14. *                *******************                *↵
  15. *                                                   *↵
  16. *                                                   *↵
  17. *                                                   *↵
  18. *                                                   *↵
  19. *                                 ↵
1秒64M0
测试用例 5以文本方式显示
  1. 30↵
以文本方式显示
  1. ***************              ***************↵
  2. *             *              *             *↵
  3. *             *              *             *↵
  4. *             *              *             *↵
  5. *             *              *             *↵
  6. *             *              *             *↵
  7. *             *              *             *↵
  8. *             *              *             *↵
  9. *             *              *             *↵
  10. *             *              *             *↵
  11. *             *              *             *↵
  12. *             ****************             *↵
  13. *                                          *↵
  14. *                                          *↵
  15. *                                          *↵
  16. *                                          *↵
  17. *                                          *↵
  18. *                                          *↵
  19. *                                          *↵
  20. *                                          *↵
  21. *                                          *↵
  22. *                                          *↵
  23. *           ↵
1秒64M

代码实现:

#include<stdio.h>
int main() 
{
	int n;
	scanf("%d",&n);
	int i,j;
	int p=n/3,q=n/2-1;
	if(n%2==1)
	{for(i=1;i<=(2+n/3+n/2);i++)
	{
	if(i==1)
		{
			for(j=1;j<=n/2*3;j++) 
			{
				if(j>=n/2&&j<=n)
				{
					printf("*");
				}
				else
				{
					printf(" ");
				}
			}
		}
	else if(i>1&&i<=(1+n/3))
	{
			for(j=1;j<=3*n/2;j++) 
			{
				if(j==n/2||j==n)
				{
					printf("*");
				}
				else
				{
					printf(" ");
				}
			}
	}
	else if(i==(2+n/3))
	{
			for(j=1;j<=n/2*3;j++) 
			{
				if(j>n/2&&j<n)
				{
					printf(" ");
				}
				else
				{
					printf("*");
				}
			}
	}
	else if(i>(2+n/3)&&i<=(1+n/3+n/2))
	{
			for(j=1;j<=n/2*3;j++) 
			{
				if(j==1||j==n/2*3)
				{
					printf("*");
				}
				else
				{
					printf(" ");
				}
			}
	}
	else
	{
			for(j=1;j<=n/2*3;j++) 
			{
					printf("*");
			}
	}
	printf("\n");
	}
		
	}
	else
	{for(i=1;i<=(2+n/2+n/3);i++)
	{
		if(i==1)
		{
			for(j=1;j<3*n/2;j++)
			{
				if((j>=1&&j<=n/2)||(j>=n&&j<3*n/2))
				{
					printf("*");
				}
				else
				{
					printf(" ");
				}
			}
		}
		else if(i>1&&i<=1+n/3)
		{
			for(j=1;j<3*n/2;j++)
			{
				if(j==1||j==n/2||j==n||j==3*n/2-1)
				{
					printf("*");
				}
				else
				{
					printf(" ");
				}
			}
		}
		else if(i==(2+n/3))
		{
			for(j=1;j<3*n/2;j++)
			{
				if(j==1||j==3*n/2-1||(j>=n/2&&j<=n))
				{
					printf("*");
				}
				else
				{
					printf(" ");
				}
			}
		}
		else if(i>2+n/3&&i<(2+n/2+n/3))
		{
			for(j=1;j<3*n/2;j++)
			{
				if(j==1||j==3*n/2-1)
				{
					printf("*");
				}
				else
				{
					printf(" ");
				}
			}
		}
		else
		{
			for(j=1;j<3*n/2;j++)
			{
					printf("*");
			}
		}
		printf("\n");
	}
	}
	return 0;
}

  • 20
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值