黑马程序员技术交流社区

标题: 分享一下多重循环语句的经典题目 [打印本页]

作者: joe520kay    时间: 2015-7-23 22:00
标题: 分享一下多重循环语句的经典题目
我就直接写代码啦!!!!
package com.joe.multipleCycle;

/**
* 多重循环的经典案例
*
* @author joe
*
*/

public class MultipleCycleDemo {
        public static void main(String[] args) {
                RightTriangle();//打印直角三角形
                Triangle();//打印等腰三角形
                Factorial();//求阶乘和
                Multiplication();//打印九九乘法表

        }

        // 使用多重循环打印直角三角形
        // *
        // **
        // ***
        // ****
        // *****
        public static void RightTriangle() {
                // 外层控制行数
                for (int i = 0; i < 5; i++) {
                        // 控制每行的空格数
                        for (int j = i; j < 4; j++) {
                                System.out.print(" ");
                        }
                        // 控制每行的*的个数
                        for (int j = 0; j <= i; j++) {
                                System.out.print("*");
                        }
                        System.out.println();// 输出换行
                }
        }
       
        //用多重循环语句:打印等腰三角形
        //     *
        //    ***
        //   *****
        //  *******
        // *********
        public static void Triangle(){
                //控制行数
                for(int i = 0;i<5;i++){
                        //控制每行的空格数
                        for(int j=i;j<4;j++){
                                System.out.print(" ");
                        }
                        // 控制每行的*的个数
                        for(int j = 0;j<=i*2;j++){
                                System.out.print("*");
                        }
                        System.out.println();
                }
        }

        // 用多重循环语句:阶乘求和1!+2!+……+10!
        public static void Factorial() {
                int sum = 0; // 定义一个变量接收结果
                // 控制十个数的阶乘
                for (int i = 1; i <= 10; i++) { // 外层循环控制循环次数
                        int s = 1; // 定义一个变量来接收每个数的阶乘
                        for (int j = 1; j <= i; j++) { // 内层循环实现每个数字的阶乘
                                s *= j;
                        }
                        System.out.println(i + "的阶乘是 " + s);
                        sum += s;
                }
                System.out.println("10的阶乘和是: " + sum);
        }

        // 用多重循环语句:打印九九乘法表
        public static void Multiplication() {
                int result;
                // 控制行数
                for (int i = 1; i <= 9; i++) {
                        //控制列数
                        for (int j = 1; j <= i; j++) {
                                result = i * j;
                                System.out.print(j + "X" + i + "=" + result + "\t");
                        }
                        System.out.println();
                }
        }
       
}






欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2