c语言编程笔录

首页 >   > 笔记大全

笔记大全

c语言星号倒左齐三角形编程

更新时间:2023-06-15

问题描述

本题要求编写程序,输出一个“星号倒左齐三角形”,具体格式详见下面的示例。本题要求程序输出附加一个不带换行符的“控制字符”(如end-of-file、Control-Z等),以表示输出结束。

解题思路

要输出“星号倒左齐三角形”,可以先从倒三角形入手。倒三角形可以通过嵌套循环输出,外层循环控制行数,内层循环控制每行输出的星号数。具体实现如下:

  1. 读入行数。
  2. 外层循环控制输出的行数,每次输出一行。
  3. 内层循环控制每行输出的星号数,每次输出一个星号。

输出倒三角形后,要把它“倒”过来,即把每行星号从左向右排列,改为从右向左排列,实现方法是在内层循环输出每个星号之前先输出若干个空格,使每行的星号都在同一列,然后把内层循环条件改一下即可。

参考代码

下面是本题的参考代码:

#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;
}

注意最后要输出一个“控制字符”表示输出结束。