首页 > 编程语言 > 详细

用不规则数组打印1-100规则排列的三角形

时间:2017-11-22 15:48:44      阅读:192      评论:0      收藏:0      [点我收藏+]

需求:

1. 打印1-100数字组成的直角三角形,不足位用 ‘- ‘补齐

2.使用不规则数组实现

 

技术考核:

1.数组,多维数组,不规则数组

2.自增自减运算符

3.for 多层循环与跳出

  • break 跳出语句
  • continue 继续语句

4.字符串

 

效果图:

技术分享图片

 

思路:

1.使用不规则数组实现,可任意定义数字的最大值

2.使用多层嵌套循环

3.break 跳出语句

4.continue 继续语句

 

代码:

	// 不规则数组打印1-100 的梯形
	public static void print100Nums() {
		int[][] arr = new int[20][];

		out : for (int i = 0; i < arr.length; i++) {
				arr[i] = new int[i + 1];
				for (int j = 0; j < arr[i].length; j++) {
					if (i == 0 & j == 0) {
						arr[i][j] = (i + 1) * (j + 1);
					} else if (j == 0) {
						int lastIndex = arr[i - 1].length - 1;
						int lastValue = arr[i - 1][lastIndex];
						arr[i][j] = lastValue + 1;
					} else {
						arr[i][j] = arr[i][j - 1] + 1;
					}
					if(arr[i][j]==100){
						break out;
					}
				}
			}
		int firIndex = 0;
		int senIndex = 0;
		for(int i=0;i<arr.length;i++){
			for(int j=0;j<arr[i].length;j++){
				int value = arr[i][j];
				int len = String.valueOf(value).length();
				if(firIndex!=0 && senIndex != 0 && firIndex == i && senIndex < j){
					System.out.print("-"+"  ");
					continue;
				}
				if(len<2){
					System.out.print(value+"  ");
				} else {
					System.out.print(value+" ");
				}
				if(value == 100){
					firIndex = i;
					senIndex = j;
				}
			}
			System.out.println();
			if(firIndex!=0 && senIndex != 0 && firIndex == i){
				break;
			}
		}
		
	}

 

另一种打印方式:

        for(int [] x: arr){
            for (int y : x){
                System.out.print(y + "   ");
                if(y==100){
                    return;
                }
            }
            System.out.println();
        }

 

总结:

跳转语句
  break 跳出
    用法1:跳出循环;当循环嵌套时,跳出当前的循环;
    用法2:跳出语句块。 用于循环嵌套时跳出外循环。
  continue 继续
    用法:虽然break可以跳出循环,但是有时候要停止一次循环剩余的部分,同时还要继续执行下次循环,这时候就需要continue
  return 返回   

    用法:终止以下所有程序的执行

用不规则数组打印1-100规则排列的三角形

原文:http://www.cnblogs.com/xianlei/p/7879440.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!