解题思路:把整个图形看作一个平行四边形,由一个正三角形和一个倒三角形组成,一行一行打印,结束换行
注意事项:n为行高,m为两个三角形之间的距离,图形最前面的空格等于两个三角形之间的距离m
参考代码:
#includeint main() { int n, m, k = 1, j, a; scanf("%d%d", &n, &m); a=n*2-1; //倒三角第一行*号个数等于总个数(h*2)减倒三角第一行*号个数 int b = n - 1; for (int i = 0; i < n; i++) { //图形行高 for (j = 0; j < m+b; j++) //图形前面的空格数 printf(" "); for (j = 0; j < k; j++) //正三角形 printf("*"); for (j = 0; j < m; j++) printf(" "); for (j = 0; j < a; j++) //倒三角 printf("*"); printf("\n"); k += 2; a -= 2; //正三角每行递增2,倒三角每行递减2 b--; //三角形前面空格(形成阶梯格式) } return 0; }
0.0分
17 人评分
C语言程序设计教程(第三版)课后习题11.1 (C语言代码)浏览:664 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:539 |
C语言程序设计教程(第三版)课后习题4.9 (C语言代码)浏览:600 |
C语言程序设计教程(第三版)课后习题11.8 (C语言代码)浏览:879 |
2^k进制数 (C语言描述,蓝桥杯)浏览:1420 |
C语言训练-亲密数 (C语言描述,反正怎么都能对)浏览:2169 |
模拟计算器 (C语言代码)浏览:2300 |
输入输出格式练习 (C语言代码)浏览:751 |
盐水的故事 (C语言代码)浏览:1528 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:546 |