沙漏图形

问题 D: 沙漏图形 tri2str [1*+]
时间限制: 1 Sec 内存限制: 128 MB
提交: 341 解决: 240
[提交][状态][讨论版][命题人:外部导入]
题目描述
问题:输入n,输出正倒n层星号三角形。首行顶格,星号间有一空格,效果见样例
输入样例:
3
输出样例:



数据规模 1<= n <=50
自己代码:

#include<iostream>
int main() {
	int n;
	//char a[99][99];
	scanf("%d", &n);
	if (n >= 1 && n <= 50) {
		//先输出上半部分
		for (int i = 0; i < n - 1; i++) {
			//在输出第一个'*'之前,先输出相应的空字符
			for (int j = 0; j <i; j++) printf(" ");
			for (int j = 0; j < n - i; j++) {
				printf("* ");
				if (j == n - i - 1) printf("\n");
			}
		}
		//输出中间部分,先输出n-1个空字符
		for (int i = 0; i < n - 1; i++)
		{
			printf(" ");
		}
		printf("*\n");
		//输出下半部分
		for (int i = 0; i < n - 1; i++) {
			for (int j = 0; j < n - i - 2; j++) printf(" ");
			for (int j = 0; j < i + 2; j++) {
				printf("* ");
				if (j == i + 2 - 1) printf("\n");
			}
		}
			
	}
	system("pause");
	return 0;
}

猜你喜欢

转载自blog.csdn.net/qq_35966478/article/details/86582692
今日推荐