|
10鱼币
任务描述
输入正整数N和字符C,输出(2*N-1)行如下规律的字符图形,例如当输入:“4 *”的时候,输出:
*
***
******
********
******
***
*
输入格式:
若干行,每行一组数据,为一个整数和一个字符,之间仅有一个空格分隔。
输出格式:
按要求输出每组字符图形,每组输出之间有一个空行。
输入样例:
1 -
2 +
3 #
4 %
输出样例:
-
+
+++
+
#
###
#####
###
#
%
%%%
%%%%%
%%%%%%%
%%%%%
%%%
%
麻烦用C语言写,要是能加上注释就更好了,谢谢
代码实现如下
- #include <stdio.h>
- #include <string.h>
- int main(int argc, char const *argv[])
- {
- int clicks = 0;
- char symbol;
- scanf("%d %c",&clicks, &symbol);
- while(getchar()!='\n'); //清空输入缓存区
- //当输入的行数小于等于零时退出
- while (clicks > 0)
- {
- //上半部分打印
- for (int i = 0; i < clicks; i++)
- {
- for (int j = 0; j < 1+i*2; j++)
- {
- printf("%c ",symbol);
- }
- printf("\n");
- }
- //下半部分打印
- for (int i = 0; i < clicks-1; i++)
- {
- for (int j = 0; j < ((2*clicks-1)-(i+1)*2); j++)
- {
- printf("%c ",symbol);
- }
- printf("\n");
- }
- //再次输入
- scanf("%d %c",&clicks, &symbol);
- while(getchar()!='\n');
- }
-
- return 0;
- }
复制代码
|
|