/* 如果是5行
* 第一行4个空格,1个*
*** 第二行3个空格,3个*
***** 第三行2个空格,5个*
******* 第四行1个空格,7个*
********* 第五行0个空格,9个*
*/
首先打印5行的正三角形,代码如下
#include <stdio.h>
int main(int argc, const char * argv[]) {
for(int i=1;i<=5;i++){
//打印空白
for (int j=4; j>=i; j--) {
printf(" ");
}
for (int j=1; j<=2*i-1; j++) {
printf("*");
}
printf("\n");
}
return 0;
}
但是上面这个只是打印5行的正三角形,不具有通用性,不能手动输入需要打印的行数。
下面这个程序可以手动输入你需要打印的行数,打印任意行数的正三角形。代码如下:
//这个是通用性的
#include <stdio.h>
int main(int argc, const char * argv[]) {
int low=0;
printf("请输入正三角的行数\n");
scanf("%d",&low);
for(int i=1;i<=low;i++){
//打印空白
for (int j=low-1; j>=i; j--) {
printf(" ");
}
for (int j=1; j<=2*i-1; j++) {
printf("*");
}
printf("\n");
}
return 0;
} |
|