当前位置: 代码迷 >> 综合 >> 1959-打印镂空字符三角形
  详细解决方案

1959-打印镂空字符三角形

热度:5   发布时间:2023-12-29 15:41:05.0

【C系列3.15】循环训练之镂空的三角形 1959

Time Limit:   1 s      Memory Limit:    32 MB
Submission: 392     AC: 146     Score: 10.10

 

Description

wzj非常擅长UI设计,因此被文浩的猎头公司招去掏三角形。把一个字符三角形掏空,就能节省材料成本,减轻重量,但关键是为了追求另一种视觉效果。在设计的过程中,需要给出各种花纹的材料和大小尺寸的三角形样板,通过电脑临时做出来,以便看看效果。

Input

每行包含一个字符和一个整数n(0<n<41),不同的字符表示不同的花纹,整数n表示等腰三角形的高。显然其底边长为2n-1。如果遇到@字符,则表示所做出来的样板三角形已经够了。

Output

每个样板三角形之间应空上一行,三角形的中间为空。显然行末没有多余的空格。

Samples


Hint

1. 注意两个输出之间是有换行了,也就是多一个换行。

2. 回车也是字符,需要处理好。



下附AC代码:

#include <stdio.h>
int main() {char ch;int n;int i, j, k;while (scanf("%c", &ch) != EOF) {if ('@' == ch)break;scanf("%d", &n);for (i = 1; i <= n; ++i) {for (j = 1; j <= n - i; ++j) {printf(" ");}for (k = 1; k <= 2 * (i - 1) + 1; ++k) {if (1 == i || n == i)printf("%c", ch);else {if (1 == k || k == 2 * (i - 1) + 1)printf("%c", ch);elseprintf(" ");}}printf("\n");}printf("\n");getchar();}return 0;
}



原题链接: http://acm.hznu.edu.cn/OJ/problem.php?cid=1091&pid=32