打折计价逻辑值与分支结构_第1页
打折计价逻辑值与分支结构_第2页
打折计价逻辑值与分支结构_第3页
打折计价逻辑值与分支结构_第4页
打折计价逻辑值与分支结构_第5页
已阅读5页,还剩16页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

打折计价逻辑值与分支结构第1页,课件共21页,创作于2023年2月内容介绍4.1任务预览4.2逻辑值4.3关系运算符与关系表达式4.4逻辑运算符与逻辑表达式4.5程序基本控制结构4.6if语句4.7switch(多分支)语句4.8三目条件运算符4.9本章小结4.10实训4:打折计价、显示星座、判断成绩等级第2页,课件共21页,创作于2023年2月4.1任务预览本章实训程序运行结果:

第3页,课件共21页,创作于2023年2月4.2逻辑值关键字true和false是逻辑值,也称逻辑常量。具有逻辑值的类型称为boolean型(布尔型),即逻辑型。声明逻辑变量的语法:boolean变量表;【例4-1】编写测试逻辑值程序。publicclassExample1{ publicstaticvoidmain(String[]args){ booleanweatherClearness=true; System.out.println("天气晴朗吗?——"+weatherClearness); weatherClearness=false; System.out.println("现在天气晴朗吗?——"+weatherClearness); }}第4页,课件共21页,创作于2023年2月4.3关系运算符与关系表达式关系运算符有6个:<><=>===!=关系表达式:由关系运算符构成的表达式,运算结果为逻辑值。关系运算符名称与含义关系表达式例子结果(设intage=18)<小于age<35true>大于age>6true<=小于或等于age<=18true>=大于或等于age>=28false==等于age==60false!=不等于age!=3true第5页,课件共21页,创作于2023年2月4.4逻辑运算符与逻辑表达式条件逻辑运算符&&和||应用最多,它们均具备“短路求值”特性。逻辑运算符名称含义逻辑表达式例子结果(设intage=18)!逻辑非一元运算符。真变假,假变真!(age<35)!falsefalsetrue&逻辑与两操作数同真,结果为真;否则为假age>6&age<35false&age==18truefalse^逻辑异或两操作数一真一假,结果才为真;否则为假age>=18^age<6true^truetruefalse|逻辑或两操作数同假,结果为假;否则为真age==18|age>=28age<14|age>60truefalse&&条件逻辑与含义同&,但当左操作数为假,不用算右操作数的值,直接得出假结果age>6&&age<35false&&age==18false&&truetruefalsefalse||条件逻辑或含义同|,但当左操作数为真,不用算右操作数的值,直接得出真结果age==18||age>=28age<14||age>60true||age>=80truefalsetrue第6页,课件共21页,创作于2023年2月

4.5程序基本控制结构

4.5.1顺序结构有3种基本控制结构:顺序、分支和循环结构。顺序结构按从上到下的顺序逐条执行语句。顺序结构的程序流程图:第7页,课件共21页,创作于2023年2月4.5.2分支结构分支结构(选择结构):一般由两个分支组成。“单分支”结构:第二个分支为空。多分支结构:分支结构嵌套而产生。条件(表达式)是返回逻辑值的关系或逻辑表达式。第8页,课件共21页,创作于2023年2月4.5.3循环结构有两种循环结构:第一种是先判断条件,如条件不满足,则不执行循环体;条件满足,才执行循环体。第二种先执行循环体,再判断条件,条件满足,继续执行循环体。因此,第二种循环结构至少要执行一次循环体。

第9页,课件共21页,创作于2023年2月4.6if语句if-else,简称if(如果)语句。语法形式:if(条件表达式)

代码块1else

代码块2if语句也可以没有else子句(“单分支”结构):if(条件表达式)

代码块第10页,课件共21页,创作于2023年2月【例4-2】编写打折计价程序,购物2000元以上打8折。importjava.util.*;… Scannerscan=newScanner(System.in); doubleprice,discount; System.out.println("请输入购买商品的总价:"); price=scan.nextDouble(); if(price<=0){ System.out.println("输入错误,应输入正数的总价!"); return; } if(price>=2000){discount=price*0.8; }else{//相当于price<2000 discount=price; } System.out.printf("打折后只需付¥%.2f元",discount);…

第11页,课件共21页,创作于2023年2月if语句典型嵌套形式if(条件表达式1)

代码块1elseif(条件表达式2)

代码块2elseif(条件表达式3)

代码块3...elseif(条件表达式n)

代码块nelse

代码块n+1这种if嵌套语句有n层嵌套,形成n+1个分支。第12页,课件共21页,创作于2023年2月【例4-3】编写打折计价程序:购买商品总价2000元以上,打8折;1000元以上,打8.5折;500元以上,打9折;不到500元,不打折。… doubleprice,discount,discPrice; Scannerscan=newScanner(System.in); System.out.println("请输入购买商品的价格:"); price=scan.nextDouble(); if(price>=2000){discount=0.8;} elseif(price>=1000){discount=0.85;} elseif(price>=500){discount=0.9;} elseif(price>0){discount=1;} else{ System.out.println("输入数据有问题。"); return; } discPrice=price*discount; System.out.printf("%.2f折,折扣价为¥%.2f",discount,discPrice);…第13页,课件共21页,创作于2023年2月【例4-4】编程:根据年收入来决定生活水平。…Scannerscan=newScanner(System.in); System.out.println("请输入年薪(单位万元):"); doubleincome=scan.nextDouble(); if(income>=20){System.out.println("可(按揭)购房");} elseif(income>=10){System.out.println("能购买汽车");} elseif(income>=5){System.out.println("可保障衣食无忧");} elseif(income>=2){System.out.println("能维持温饱");} elseif(income>=1){System.out.println("只能勉强度日");} else{System.out.println("生活在水深火热之中");}...

第14页,课件共21页,创作于2023年2月4.7switch(多分支)语句引子【例4-5】使用if嵌套语句编程,根据输入的数字,输出星期数。… Scannerscan=newScanner(System.in); System.out.println("请输入代表星期几的数字:"); intnum=scan.nextInt(); if(num==0){System.out.println("代表:星期日");} elseif(num==1){System.out.println("代表:星期一");} elseif(num==2){System.out.println("代表:星期二");} elseif(num==3){System.out.println("代表:星期三");} elseif(num==4){System.out.println("代表:星期四");} elseif(num==5){System.out.println("代表:星期五");} elseif(num==6){System.out.println("代表:星期六");} else{System.out.println("输入内容超出范围!");}…

第15页,课件共21页,创作于2023年2月【例4-6】使用switch语句编程,根据输入的数字,输出星期数。… intnum=scan.nextInt(); switch(num){ case0: System.out.println("代表:星期日"); break; case1: System.out.println("代表:星期一"); break; case2: System.out.println("代表:星期二"); break; case3: System.out.println("代表:星期三"); break; case4: System.out.println("代表:星期四"); break; case5: System.out.println("代表:星期五"); break; case6: System.out.println("代表:星期六"); break; default: System.out.println("输入内容超出范围!");}…第16页,课件共21页,创作于2023年2月多分支语句switch语法形式

switch(离散型表达式){case常量1:

语句组1break;case常量2:

语句组2break;...case常量n:

语句组nbreak;default:

语句组n+1}注意:switch语句表达式类型只能是byte、short、int、char或enum(枚举类型),不允许double和float,也不允许String类型。第17页,课件共21页,创作于2023年2月4.8三目条件运算符表达式形式:条件表达式?表达式1:表达式2例如:price>=2000?price*0.8:price;【例4-7】使用三目条件运算符实现例4-3的商品打折计价。… doubleprice,discount,discPrice;… price=scan.nextDouble(); discount=price>=2000?0.8: price>=1000?0.85: price>=500?0.9: price>0?1:0; if(discount==0){ System.out.println("输入数据有问题。"); } else{ discPrice=price*discount; System.out.printf("%.2f折,折扣价为¥%.2f",discount,discPrice); }…第18页,课件共21页,创作于2023年2月4.9本章小结逻辑值只有两个:true和false。关系

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论