3.1 流程控制-选择结构和循环结构经典例题

一:
package day03;
import java.util.Scanner;
//年龄判断程序
public class AgeRange {
    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
        System.out.println("请输入年龄:");
        int age = scan.nextInt();
        
        System.out.println(age>=18 && age<=50); //age在18到50之间
    }
}

二:
package day03;
import java.util.Scanner;
//柜台收银程序
public class Cashier {
    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
        System.out.println("请输入单价:");
        double unitPrice = scan.nextDouble();
        System.out.println("请输入数量:");
        double amount = scan.nextDouble();
        System.out.println("请输入金额:");
        double money = scan.nextDouble();
        
        //计算总价(单价*数量)
        double totalPrice = unitPrice*amount;
        if(totalPrice>=500) { //满500
            totalPrice*=0.8;  //打8折
        }
        
        if(money>=totalPrice) { //够
            double change = money-totalPrice; //计算找零(给的钱-总价)
            System.out.println("总价为:"+totalPrice+",找零为:"+change);
        }else {
            System.out.println("ERROR!您给的钱不够,还差:"+(totalPrice-money));
        }
        
        
    }
}
三:
package day03;
//分支结构的演示
public class ConditionDemo {
    public static void main(String[] args) {
        int num = 5;
        if(num%2==0) {
            System.out.println(num+"是偶数");
        }else {
            System.out.println(num+"是奇数");
        }
        System.out.println("over");


        /*
        int num = 5;
        if(num%2==0) {
            System.out.println(num+"是偶数");
        }
        System.out.println("over");
        */
    }
}


四:
package day03;
import java.util.Scanner;
//闰年的判断
public class LeapYear {
    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
        System.out.println("请输入年份:");
        int year = scan.nextInt();
        
        boolean flag = (year%4==0 && year%100!=0) 
                       || 
                       year%400==0;
        String str = flag ? year+"是闰年" : year+"不是闰年";
        System.out.println(str);
        
    }
}

五:
package day03;
//运算符的演示
public class OperDemo {
    public static void main(String[] args) {

        /*
         * 赋值、字符串连接、条件运算符的练习:
         * 1)声明整型变量a并赋值为5
         *     在a本身基础之上增10,输出a
         *     在a本身基础之上除5,输出a
         *     在a本身基础之上乘8,输出a
         * 2)声明整型变量age并赋值为37
         *     输出:age=37
         *     输出:我的年龄是:37
         *     输出:我今年37岁了
         *   输出10+""+20,输出10+20+"",输出""+10+20
         * 3)声明整型变量b和c,并分别赋值为8和5
         *     声明整型变量max并赋值为b和c的最大值,输出max
         */
        /*
         * 6.条件/三目运算符:
         *   1)语法:
         *       boolean?数1:数2
         *   2)执行过程:
         *       判断boolean的值:
         *         若为true,则整个的结果为数1
         *         若为false,则整个的结果为数2
         */
        /*
        int a = 5;
        int flag = a>0?1:-1;
        System.out.println(flag); //1
        
        int b=5,c=8;
        int max = b>c?b:c;
        System.out.println("max="+max);
        */
        
        /*
         * 5.字符串连接运算符:
         *   1)+:
         *     1.1)若两边为数字,则做加法运算
         *     1.2)若两边出现了字符串,则做字符串连接
         */
        /*
        int age = 37;
        System.out.println("age="); //age=
        System.out.println(age);    //37
        System.out.println("age="+age); //age=37
        System.out.println("我的年龄是:"+age);
        System.out.println("我今年"+age+"岁了");
        
        System.out.println(10+20+""+30); //"3030"
        System.out.println(10+20+30+""); //"60"
        System.out.println(""+10+20+30); //"102030"
        */

        /*
         * 4.赋值运算符:
         *   1)简单赋值运算符:=
         *   2)扩展赋值运算符:+=,-=,*=,/=,%=
         *     -------自带强转功能
         */
        /*
        //面试题:
        short s = 5;
        s += 10; //相当于 s = (short)(s+10);
        //s = s+10; //编译错误,需做强转
        
        int a = 5;
        a += 10; //相当于a=(int)(a+10)
        System.out.println(a); //15
        a *= 2; //相当于a=(int)(a*2)
        System.out.println(a); //30
        a /= 6; //相当于a=(int)(a/6)
        System.out.println(a); //5
        */

        /*
         * 关系、逻辑运算符的练习:
         * 1)要求:
         *   1.1)&&(4组),||(4组),!(2组)
         *        4组:true+false,false+true
         *            true+true,false+false
         *        2组:true,false
         *   1.2)关系运算符的那6个符号必须都用上
         *   1.3)演示&&和||的短路
         */
        /*
         * 3.逻辑运算符:
         *   1)&&:短路与(并且),两边都为真则为真,见false则false
         *        --若第1个数为false,则发生短路(后面的不执行了)
         *     ||:短路或(或者),有一边为真则为真,见true则true
         *        --若第1个数为true,则发生短路(后面的不执行了)
         *      !:逻辑非(取反),非真则假,非假则真
         *   2)逻辑运算是建立在关系运算的基础之上的,
         *     逻辑运算的结果也是boolean型
         */
        /*
        int a=5,b=10,c=5;
        boolean b4 = a<b || c++>2;
        System.out.println(b4); //true
        System.out.println(c);  //5,发生短路
        */
        /*
        boolean b3 = a>b && c++>2;
        System.out.println(b3); //false
        System.out.println(c);  //5,发生短路了
        */
        
        /*
        boolean b2 = !(a<b);
        System.out.println(b2);     //!true=false
        System.out.println(!(a>b)); //!false=true
        */
        /*
        System.out.println(b>=a || b<c); //true||false=true
        System.out.println(b<=c || b>a); //false||true=true
        System.out.println(b!=c || a<b); //true||true=true
        System.out.println(a==b || c>b); //false||false=false
        */
        /*
        boolean b1 = b>=a && b<c;
        System.out.println(b1);          //true&&false=false
        System.out.println(b<=c && b>a); //false&&true=false
        System.out.println(a==b && c>b); //false&&false=false
        System.out.println(b!=c && a<b); //true&&true=true
        */

        
        /*
         * 2.关系运算符:
         *   1)>(大于),<(小于)
         *     >=(大于或等于),<=(小于或等于)
         *     ==(等于),!=(不等于)
         *   2)关系运算的结果为boolean型,
         *     关系成立则为true,关系不成立则为false
         */
        /*
        int a=5,b=10,c=5;
        boolean b1 = a>b;
        System.out.println(b1);   //false
        System.out.println(c<b);  //true
        System.out.println(b>=c); //true
        System.out.println(a<=c); //true
        System.out.println(a==c); //true
        System.out.println(a!=c); //false
        System.out.println(a%2==0); //false
        */
        
        /*
         * 算术运算符:
         * 1)输出5%3,输出6%3,输出3%5
         * 2)声明整型变量a并赋值为5,a++,输出a
         *   声明整型变量b并赋值为5,++b,输出b
         * 3)声明整型变量c并赋值为5,
         *     声明整型变量d并赋值为c++,输出c,输出d
         *   声明整型变量e并赋值为5,
         *     声明整型变量f并赋值为++e,输出e,输出f
         *   声明整型变量g和h,并都赋值为5,
         *     输出g--,输出g
         *     输出--h,输出h
         */
        /*
         * 1.算术运算符:+,-,*,/,%,++,--
         *   1)%:取模/取余,余数为0即为整除
         *   2)++/--:自增1/自减1,可在变量前也可在变量后
         *     2.1)单独使用时,在前在后都一样
         *     2.2)被使用时,在前在后不一样
         *           a++的值为a
         *           ++a的值为a+1
         */
        /*
        int a=5,b=5;
        //1)输出a--的值5
        //2)a自减1变为4
        System.out.println(a--); //5
        System.out.println(a);   //4
        //1)输出--b的值4
        //2)b自减1变为4
        System.out.println(--b); //4
        System.out.println(b);   //4
        */
        /*
        int a=5,b=5;
        //1)将a++的值5赋值给c
        //2)a自增1变为6
        int c = a++;
        //1)将++b的值6赋值给d
        //2)b自增1变为6
        int d = ++b;
        System.out.println(a); //6
        System.out.println(b); //6
        System.out.println(c); //5
        System.out.println(d); //6
        */
        /*
        int a=5,b=5;
        a++; //相当于a=a+1
        ++b; //相当于b=b+1
        System.out.println(a); //6
        System.out.println(b); //6
        */

        /*
        System.out.println(5%2); //1,商2余1
        System.out.println(8%2); //0,商4余0--整除
        System.out.println(2%8); //2,商0余2
        */
    }
}


 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值