zoukankan      html  css  js  c++  java
  • 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++;
    
            }
  • 相关阅读:
    Combine 框架,从0到1 —— 4.在 Combine 中使用计时器
    Combine 框架,从0到1 —— 4.在 Combine 中使用通知
    Combine 框架,从0到1 —— 3.使用 Subscriber 控制发布速度
    Combine 框架,从0到1 —— 2.通过 ConnectablePublisher 控制何时发布
    使用 Swift Package Manager 集成依赖库
    iOS 高效灵活地配置可复用视图组件的主题
    构建个人博客网站(基于Python Flask)
    Swift dynamic关键字
    Swift @objcMembers
    仅用递归函数操作逆序一个栈(Swift 4)
  • 原文地址:https://www.cnblogs.com/springxian/p/13364283.html
Copyright © 2011-2022 走看看