金字塔(三角形)
程序员文章站
2024-02-21 14:23:58
...
金字塔(三角形)
c
# include <stdio.h>
int main()
{
/**
打印金字塔
*
***
*****
*/
//以这个金字塔为例,思考我们需要几层循环,每层循环控制什么
int a,b,c;
//第一层循环控制有多少行和换行,例如我们这个有三行
for(a=0; a<3; a++){
//第二层循环控制空格,空格数自定义,从上面我们可以看出下一层空格比上一层少一个
for(b=0; b<10-a; b++){
printf(" ");
}
//第三层循环打印 * 为奇数 和 每行终止条件必须与行数有关,第二层循环和第三层循环是并列的
for(c=0; c < 2*a+1; c++) {
printf("*");
}
//换行
printf("\n");
}
return 0;
}
java
public static void main(String[] args) {
for(int a = 0; a < 3; a++) {
for(int b = 0; b < 8 - a; b++) {
System.out.print(" ");
}
for(int c = 0; c < 2*a+1; c++) {
System.out.print("*");
}
System.out.println();
}
}
倒过来的三角形
- 直接改打印星星的循环,倒过来
- 需要改一下打印空格的循环
public static void main(String[] args) {
//到过来的三角形
for(int i = 1; i <= 3; i++) {
for(int j = 1; j <= 12 + i; j++) {
System.out.print(" ");
}
for (int k = 5; k >= 2*i-1; k--) {
System.out.print("*");
}
System.out.println();
}
}