c语言星号倒左齐三角形编程
更新时间:2023-06-15问题描述
本题要求编写程序,输出一个“星号倒左齐三角形”,具体格式详见下面的示例。本题要求程序输出附加一个不带换行符的“控制字符”(如end-of-file、Control-Z等),以表示输出结束。
解题思路
要输出“星号倒左齐三角形”,可以先从倒三角形入手。倒三角形可以通过嵌套循环输出,外层循环控制行数,内层循环控制每行输出的星号数。具体实现如下:
- 读入行数。
- 外层循环控制输出的行数,每次输出一行。
- 内层循环控制每行输出的星号数,每次输出一个星号。
输出倒三角形后,要把它“倒”过来,即把每行星号从左向右排列,改为从右向左排列,实现方法是在内层循环输出每个星号之前先输出若干个空格,使每行的星号都在同一列,然后把内层循环条件改一下即可。
参考代码
下面是本题的参考代码:
#include <stdio.h> int main() { int n, i, j; scanf("%d", &n); for (i = 1; i <= n; i++) { for (j = 1; j <= n - i; j++) { putchar(' '); /* 输出空格 */ } for (j = 1; j <= i; j++) { putchar('*'); /* 输出星号 */ } putchar('\n'); /* 输出换行符 */ } return 0; }
注意最后要输出一个“控制字符”表示输出结束。