• 7.23Java入门--->第四节


    1、循环结构(for,while,do  while)

    练习一:输出等腰三角形

    public static void main(String[] args) {
            int max = 5;
            for(int i = 1; i<=5 ; i++) {
                for (int j = 1; j <= max - i; j++){
                    System.out.print(" ");}
                for (int k = 1; k <= i * 2 - 1; k++){
                    System.out.print("*");}
                System.out.println();
            }
        }
    输出结果:
        *
       ***
      *****
     *******
    *********

    练习二:输出等边三角形

    public static void main(String[] args) {
            int max = 5;
            for(int i = 0; i<=5 ; i++) {
                for (int j = 0; j <= max - i; j++){
                    System.out.print(" ");}
                for (int k = 0; k <= i - 1; k++){
                    System.out.print("* ");}
                System.out.println();
            }
        }
    输出结果:
         * 
        * * 
       * * * 
      * * * * 
     * * * * * 

    练习三:99乘法表

    for (int i=1;i<10;i++){
                for (int j=1;j<=i;j++){
                    System.out.print(i+"*"+j+"="+i*j+" ");
                }
                System.out.println();
    结果:
    1*1=1 
    2*1=2 2*2=4 
    3*1=3 3*2=6 3*3=9 
    4*1=4 4*2=8 4*3=12 4*4=16 
    5*1=5 5*2=10 5*3=15 5*4=20 5*5=25 
    6*1=6 6*2=12 6*3=18 6*4=24 6*5=30 6*6=36 
    7*1=7 7*2=14 7*3=21 7*4=28 7*5=35 7*6=42 7*7=49 
    8*1=8 8*2=16 8*3=24 8*4=32 8*5=40 8*6=48 8*7=56 8*8=64 
    9*1=9 9*2=18 9*3=27 9*4=36 9*5=45 9*6=54 9*7=63 9*8=72 9*9=81 

    练习四:计算100以内奇数和

    public class Test004 {
        public static void main(String[] args) {
            int sum=0;
            for (int i=1;i<=100;i++){
                if(i%2!=0){
                    sum+=i;
                }
            }
            System.out.println(sum);
        }
    }
    输出结果:
    2500

    练习五:输出空心菱形

    public static void main(String[] args) {
    Scanner scanner=new Scanner(System.in);
    System.out.println("输入行数:");
    int lay = scanner.nextInt();
    for (int i = 0; i <= lay; i++) { //控制上半个菱形行数
    for (int j = 0; j < lay-i; j++) { //输出空格
    System.out.print(" ");
    }
    for (int k = 1; k <=2*i-1 ; k++) { //挨着空格直接输出一个*,另一个在最后
    if (k==1||k==2*i-1){
    System.out.print("*");
    }else{
    System.out.print(" "); //其他全是空格
    }
    }
    System.out.println();
    }
    for (int i = 1; i <=lay-1; i++) {
    for (int j = 1; j <= i; j++) {
    System.out.print(" ");
    }
    for (int k = 1; k <= 2*(lay-i)-1; k++) {
    if (k==1||k==2*(lay-i)-1){
    System.out.print("*");
    }else{
    System.out.print(" ");
    }
    }
    System.out.println();
    }
    }
    输出结果:
       *   
      * *  
     *   * 
    *     *
     *   * 
      * *  
       *   

    思考:Java代码都符合固定的逻辑,有些时候需要思考

    例如:

    2、while(布尔值){

      循环体

    }

     do……while 循环

    do{

      循环体

    }while();

    do……while 先执行循环体,再去判断

    练习1-100 7的倍数

     public static void main(String[] args) {
        int i=0;
        int sum=0;
        int num=0;
        while(i<=100){
            if (i%7==0&&i!=0){
                sum+=i;
                num++;
            }
            i++;
        }
            System.out.println(num+"个");
            System.out.println("和:"+sum);
    
    }
    运行结果:
    14个
    和:735

    思考:0 的问题 必考虑

    剑指offer第一章说到的0的问题,×、÷、% 都要考虑0的问题

    break:用于终止某个语句块的执行(当前语句块)

         也可以添加标签,跳出标签语句块(垃圾不要用)

    continue:跳过当前语句,不影响其他条件的执行。

         也可以添加标签,影响外层逻辑(垃圾不要用)

    return:终极结束语句,方法直接结束。

    练习

    程序开始运行输出到控制台:
    ************提示****************
    输入0:开户
    输入1:查询
    输入2:存款
    输入3:取款
    输入4:退出
    ********************************
    
    
    如果用户输入的不是1-4之间的数提示:您选择的菜单不存在,请重新选择:
    
    程序开始运行输出到控制台:
    ************提示****************
    输入0:开户
    输入1:查询
    输入2:存款
    输入3:取款
    输入4:退出
    ********************************
    
    当用户输入0时。则进入开户功能:系统提示:
    ********************************
    您选择的是开户功能
    请输入您的姓名:
    此时用户需要输入姓名,输入完毕后系统提示:
    请输入您的身份证号:
    此时用户需要输入身份证号,输入完毕验证是否为18位身份证,如果未通过验证,提示重新输入身份证
    直到通过验证为止。
    通过验证后输入密码:
    此时用户需要输入6位纯数字密码,输入完成后提示:
    开户成功  谢谢使用,从新回到
    ************提示****************
    输入0:开户
    输入1:查询
    输入2:存款
    输入3:取款
    输入4:退出
    ********************************
    public static void main(String[] args) {
    Scanner scanner=new Scanner(System.in);
    System.out.println("************提示***********");
    System.out.println("输入0:开户");
    System.out.println("输入1:查询");
    System.out.println("输入2:存款");
    System.out.println("输入3:取款");
    System.out.println("输入4:退出");
    System.out.println("**************************");
    while(true){
    System.out.println("请输入序号");
    int i=scanner.nextInt();
    if (i==0){
    System.out.println("您选择的是开户");
    account();
    continue;
    }
    if (i==1){
    System.out.println("查询");
    }
    if (i==2){
    System.out.println("存款");
    break;
    }
    if (i==3){
    System.out.println("取款");
    break;
    }
    if (i==4){
    System.out.println("退出");
    return;
    }
    if (i!=1&&i!=2&&i!=3&&i!=4){
    System.out.println("输入错误重新输入");
    continue;
    }
    }
    }
    public static void account(){
    Scanner scanner=new Scanner(System.in);
    String name;
    String num;
    int password;
    System.out.println("请输入您的姓名:");
    name=scanner.next();
    System.out.println("请输入您的身份证号:");
    num=scanner.next();
    int i=num.length();
    if (i!=18){
    System.out.println("身份证号输入错误,返回上一级");
    return;
    }
    System.out.println("请输入您的密码:(密码为6为纯数字)");
    password=scanner.nextInt();
    String s=password+"";
    int test=s.length();
    if (test!=6){
    System.out.println("密码输入错误,返回上一级");
    return;
    }
    System.out.println("jiji开户成功");
    }

    水仙花数

    int i=100;
            int bai=0,shi=0,ge=0;
            while(i<=999){
                bai=i/100;
                shi=(i/10)%10;
                ge=i%10;
                if ((bai*bai*bai+shi*shi*shi+ge*ge*ge)==i){
                    System.out.println(i);
                }
                i++;
    
            }
  • 相关阅读:
    array note
    前端开发规范
    java集合分类
    react native环境
    gulp
    关于如何在海量手机号中刷选出想要的手机号
    生成用户头像插件
    下拉加载
    阿里云人脸人体识别调试心得与备忘
    Sublime text3使用时有卡顿现象
  • 原文地址:https://www.cnblogs.com/springxian/p/13364283.html
Copyright © 2020-2023  润新知