zoukankan      html  css  js  c++  java
  • for语句内嵌例题与个人理解

    例题1:画出一个高度为3的等腰三角形.

    编写程序:

    #include<stdio.h>

    main()

    {

       int a,b,c,h;

       h=3;                                                                                  \\h为高度,赋值常量3.

      for(a=1;a<=h;a++)                                                              \\a可以理解为行数,a为1,h为3,1<=3,从1到3,执行3次外循环.也就是3行.

    {

      for(b=1;b<=h-a;b++)printf(" ");                                           \\b可以理解为空格数,当执行到这一步的时候b=1,h=3,a=1,就是表达式1<=2,1到2

                                                                                                      执行两次内循环就是说第一行执行了两次空格,然后继续下一步循环

      for(c=1;c<=2*a-1;c++)printf("*");                                        \\c为*的数量,当第一行执行空格完毕后,他循环了2次就是两个空格,然后执行这一步,

                                                                                                        1<=2*1-1就是从1到1,执行一次*.

       printf(""\n);                                                                          \\执行回车 循环结束,程序跳回到a++,判断2<=3值为真,继续执行内循环.

    }

    return 0;

    }

    根据例题可以写出另一个程序:

    2.输出一个高度为3的倒等腰三角形.

    编写程序:

    #include<stdio.h>
    main()
    {
     int a,b,c,h;
     h=3;
     for(a=h;a>=1;a--){
     for(b=1;b<=h-a;b++)printf(" ");
     for(c=1;c<=2*a-1;c++)printf("*");
     printf("\n");
     }
     return 0;
    }

    举一反三, 菱形差不多就是上面两个程序的集合.只是倒三角会比正三角少一行 所以只需改动倒三角的外循环for()内的语句,  for(行数=输入高度-1;行数>=1;行数--).

    3.输出一个等腰直角三角形.

    编写程序如下:

    #include<stdio.h>
    main()
    {
     int a,b,c;
     c=3;
     for(a=1;a<=3;a++)
     {for(b=1;b<=a;b++)
     printf("*");
     printf("\n");
     }
     return 0;
    }

  • 相关阅读:
    梯度下降_机器学习-李宏毅
    LeTex算法伪代码环境
    数据结构之线性表
    Java中的初始化块、构造器、静态初始化块的执行顺序
    Java中的内省(introspector)
    JSP (Java Server Page)
    eclipse的web工程默认部署到了哪里
    Persistence机制(永久保存/序列化Serialize)
    VC++中使用正则表达式RegExp
    Java中解析和生成xml
  • 原文地址:https://www.cnblogs.com/shujun/p/3102983.html
Copyright © 2011-2022 走看看