如何用C语言打印出三角星号塔?

2、打开软件输入程序,运行,可得到三角塔。(程序我会发在最后一步)。

3、下来我说一下内部程序每一步都是什么作用。(外部环境程序就不说了,基础)。
4、创建所需变量,i j k space,特别注意space,之所以给它复制空格,因为三角塔其实是一个左半部分为一个空格组成的半个倒三角形(如图标记)。


5、在接下来这个for循环嵌套中,可以发现 i j 各控制一个变量,如果你自己在纸上一个一个写出来每次循环的话,就会发现,i 在控制横行,而 j 在控制每一列,因为内部for j>=i ,所以可以看出,每横行随着 i 一次次的增大而打印的空格越来越少(这个嵌套就是打印上面说的半个空格倒三角形,)。

6、而如图这个循环就是在每横行空格打印完后补上需要的‘ * ’。

7、上面所说的打印空格的规律是:
第1横行,打印3个空格。
第2横行,打印2个空格。
第3横行,打印1个空格。
第4横行,打印0个空格。
8、而在后面补上的信号规律则是:
第1横行,补上1个星号。
第2横行,补上3个星号。
第3横行,补上5个星号。
第4横行,补上7个星号。
而这个需要自己在输入程序之前发现每行补上的数目与每行的关系,即可列出程序。,上面的空格也是,不过相比之下比这个简单,不用验算就看得出来规律。
9、完整程序如下:
#include <stdio.h>
#include <stdlib.h>
main()
{
int i,j,k;
char space=' ';
for(i=1;i<=4;i++)
{
for(j=3;j>=i;j--)
{
printf("%c",space);
}
for(k=1;k<=(2*i-1);k=k+1)
{
printf("*");
}
printf("\n");
}
}