A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

就这里有点蒙

4 个回复

倒序浏览
需要用到嵌套的for循环,内层的for循环打印*的个数,外层的for循环控制列数
回复 使用道具 举报
for (int i=1;i<=9;i++){
        for(int j=1;j<=i;j++){
            printf("* ");
        }
        printf("\n");
    }  
这个是正三角形
*
* *
* * *
* * * *
* * * * *
* * * * * *
* * * * * * *
* * * * * * * *
* * * * * * * * *

for (int i=9; i>=1; i--) {
        for (int j=1; j<=i; j++) {
            printf("* ");
        }
        printf("\n");
    }
这个是倒三角形
* * * * * * * * *
* * * * * * * *
* * * * * * *
* * * * * *
* * * * *
* * * *
* * *
* *
*

for (int i=1;i<=9;i++){
        for (int k=9; k>=i; k--) {
            printf(" ");
        }
        for(int j=1;j<=i;j++){
            printf("* ");
        }
        printf("\n");
    }
这个算是比较漂亮点的三角形了
         *
        * *
       * * *
      * * * *
     * * * * *
    * * * * * *
   * * * * * * *
  * * * * * * * *
* * * * * * * * *

for (int i=9; i>=1; i--) {
        for (int k=9; k>=i; k--) {
            printf(" ");
        }
        for (int j=1; j<=i; j++) {
            printf("* ");
        }
        printf("\n");
    }
这个是比较漂亮点的到三角形
* * * * * * * * *
  * * * * * * * *
   * * * * * * *
    * * * * * *
     * * * * *
      * * * *
       * * *
        * *
         *



打印三角形的思路和打印乘法表的思路差不多, 下面的两个三角形,无非就是在同一行的添加了空格,判断每行的空格的多少
回复 使用道具 举报
正三角的打印根据*的个数就是他的行数所以j<=i这个控制条件就能满足了,倒三角正好互补比如第一行9个第二行就8个那么控制列数就用行与*的个数的关系就好了不行就写个二元函数套一下就行。
回复 使用道具 举报
三楼回答的已经很详细了,其实就是两层for循环的灵活运用。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马