JAVA基础编程之打印1-100数字的直角三角形

需求:

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

2.使用不规则数组实现

技术考核:

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

2.自增自减运算符

3.for 多层循环与跳出

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

4.字符串

效果图:

思路:

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

2.使用多层嵌套循环

3.break 跳出语句

4.continue 继续语句

代码:

 1     // 不规则数组打印1-100 的三角形
 2     public static void print100Nums() {
 3         int[][] arr = new int[20][];
 4
 5         out : for (int i = 0; i < arr.length; i++) {
 6                 arr[i] = new int[i + 1];
 7                 for (int j = 0; j < arr[i].length; j++) {
 8                     if (i == 0 & j == 0) {
 9                         arr[i][j] = (i + 1) * (j + 1);
10                     } else if (j == 0) {
11                         int lastIndex = arr[i - 1].length - 1;
12                         int lastValue = arr[i - 1][lastIndex];
13                         arr[i][j] = lastValue + 1;
14                     } else {
15                         arr[i][j] = arr[i][j - 1] + 1;
16                     }
17                     if(arr[i][j]==100){
18                         break out;
19                     }
20                 }
21             }
22         int firIndex = 0;
23         int senIndex = 0;
24         for(int i=0;i<arr.length;i++){
25             for(int j=0;j<arr[i].length;j++){
26                 int value = arr[i][j];
27                 int len = String.valueOf(value).length();
28                 if(firIndex!=0 && senIndex != 0 && firIndex == i && senIndex < j){
29                     System.out.print("-"+"  ");
30                     continue;
31                 }
32                 if(len<2){
33                     System.out.print(value+"  ");
34                 } else {
35                     System.out.print(value+" ");
36                 }
37                 if(value == 100){
38                     firIndex = i;
39                     senIndex = j;
40                 }
41             }
42             System.out.println();
43             if(firIndex!=0 && senIndex != 0 && firIndex == i){
44                 break;
45             }
46         }
47
48     }

总结:

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

时间: 2024-07-31 19:28:22

JAVA基础编程之打印1-100数字的直角三角形的相关文章

6、50道JAVA基础编程练习题跟答案

1 50道JAVA基础编程练习题 2 [程序1] 3 题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少? 4 程序分析: 兔子的规律为数列1,1,2,3,5,8,13,21.... 5 public class Prog1{ 6 public static void main(String[] args){ 7 int n = 10; 8 System.out.println("第"+n+

JAVA基础编程练习题

50道JAVA基础编程练习题 [程序1] 题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子对数为多少? 程序分析: 兔子的规律为数列1,1,2,3,5,8,13,21.... public class Prog1{ public static void main(String[] args){ int n = 10; System.out.println("第"+n+"个月兔子总数为&qu

50道JAVA基础编程练习题

50道JAVA基础编程练习题[程序1]题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?程序分析: 兔子的规律为数列1,1,2,3,5,8,13,21....public class Prog1{public static void main(String[] args){ int n = 10; System.out.println("第"+n+"个月兔子总数为"+f

java基础编程题

java基础编程题 1.打印出如下图案 1 public class Prog19{ 2 public static void main(String[] args){ 3 int n = 5; 4 printStar(n); 5 } 6 7 //打印星星 8 private static void printStar(int n){ 9 //打印上半部分 10 for(int i=0;i<n;i++){ 11 for(int j=0;j<2*n;j++){ 12 if(j<n-i) 1

MQ java 基础编程(一)

本文转自:http://www.blogjava.net/i369/articles/88035.html 编写人:邬文俊 编写时间 : 2006-2-16 联系邮件 : [email protected] 前言 通过 2 个多星期对 MQ 学习,在 partner 丁 & partner 武 的帮助下完成了该文档.该文档提供一个简单的例子,通过对该例子的讲解,你将知道: 1.         用 java 写客户端从 MQ Server 收发消息. 2.         MQ 作为 Websp

JAVA 基础编程练习题13 【程序 13 根据条件求数字】

13 [程序 13 根据条件求数字] 题目:一个整数,它加上 100 后是一个完全平方数,再加上 168 又是一个完全平方数,请问该数是多少? 程序分析:在 10 万以内判断,先将该数加上 100 后再开方,再将该数加上 268 后再开方,如果开方后的结 果满足如下条件,即是结果. package cskaoyan; public class cskaoyan13 { @org.junit.Test public void number() { int min = 1; int max = 10

Java 基础编程练习题

1.编写程序实现对给定的 4 个整数从大到小的顺序排列. package HomeWork01; import java.util.Scanner; public class HomeWork01 { static int number=4; //输入4个数存放在数组中 static int[] t1 = new int[number]; public static void main(String[] args) { HomeWork01 jiejie=new HomeWork01(); ji

JAVA基础编程50题(1-3题)详解

一.题目描述 1.古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子对数为多少? 程序分析: 兔子的规律为数列1,1,2,3,5,8,13,21.... ,该题其实就是斐波那契数列的一种. 2.判断m-n之间有多少个素数,并输出所有素数. 程序分析:判断素数的方法:用一个数n分别去除2到sqrt(n),这里是Math自带的函数sqrt()求该数的平方根,如果能被整除,则表明此数不是素数,反之是素数. 3.打印出所有的

JAVA基础编程50题(22-24题)详解

一.描述 题目1:统计输入的一段字符串,分别统计这个字符串中大小写字母的个数,以及数字出现的次数. 第一种方法使用Character封装类的方法:isLowerCase(),isUpperCase(),isDigit()判断是否是该类字符, 第二种方法是直接使用char字符范围比较来统计. 题目2:用户输入一串待统计的字符串,然后输入用户想要统计的某个单词或者字符的次数. 比如我输入如下字符串:fdhiaojavajidaoijdjava 我要统计其中的java字符串的个数. 解题思路:传入待统