IF-ELSE嵌套练习
一,1,编写程序,由键盘输入三个整数分别存入变量num1,num2,num3中,对它们进行排序,使用if-else结构,并按从小到大的顺序输出:
package practice; import java.util.Scanner;
public class IfTest {
public static void main( String args[]) {
System.out.println("请输入第一个整数:");
Scanner scan =new Scanner(System.in);
int num1=scan.nextInt();
System.out.println("请输入第二个整数:");
int num2=scan.nextInt();
System.out.println("请输入第三个整数:");
int num3=scan.nextInt();
if(num1<num2) {
if(num3<num1) {
System.out.println(num3+","+num1+","+num2);
}else if(num3>num2) {
System.out.println(num1+","+num2+","+num3);
}else System.out.println(num1+","+num3+","+num2);
}
else {//num1>num2
if(num3>num1) {
System.out.println(num2+","+num1+","+num3);
}else if(num3<num2) {
System.out.println(num3+","+num2+","+num1);
}else System.out.println(num2+","+num3+","+num1);
}
} }
运行结果:

说明:IF-ELSE结构是可以相互嵌套的;
如果IF-ELSE结构中的执行语句只有一行时,对应的一对{}可以省去,但不建议这样做;
2,我家的狗五岁了,五岁的狗相当于人类的多少岁呢?其实,狗的前两年每一年相当于人的10.5岁,之后每增加一年就增加四岁。编写一个程序,获取用户输入的狗的年龄,通过程序显示其相当于人类的鸟年龄?如果用户输入负数,给出相应的提示。
import java.util.Scanner;
public class IfTest2 {
public static void main(String args[]) {
double t;
System.out.println("请输入狗的年龄:");
Scanner scan=new Scanner(System.in);
int dogAge=scan.nextInt();
if(dogAge>2) {
t= (dogAge-2)*4+21;
System.out.println(dogAge+"岁的狗相当于人类的"+t+"岁");
}else if(dogAge<=2&&dogAge>=0) {
t=dogAge*10.5;
System.out.println(dogAge+"岁的狗相当于人类的"+t+"岁");
}else {
System.out.println("您的输入有误,请重新输入");
}
}
}
运行结果:

二,整理Scanner键盘输入相关知识:
从键盘获取输入值的具体实现步骤:
- 导包:import java.util.Scanner;
- Scanner的实例化:Scanner scan=new Scanner(System.in);
- 调用Scanner类的相关方法,来获取指定类型的变量
scan.next();获取字符串
scan.nextInt();获取整型
scan.nextDouble();获取浮点型
scan.nextBoolean();获取布尔型
对于char型的获取,Scanner没有相应的方法,只能获取一个字符串;
如果非要获取char型,使用string里面的charAt()方法
import java.util.Scanner;
public class ScannerTest {
public static void main(String args[]) {
Scanner Scan=new Scanner(System.in);
System.out.println("请输入你的性别:");
String gender=Scan.next();
char genderchar=gender.charAt(0);
System.out.println(genderchar);
}
}
注意:需要根据相应的方法,来输入指定类型的值,如果输入的数据类型与要求的类型不匹配时,会抛出一个异常InputMisMatchException;(自动类型提升的除外)
IF-ELSE嵌套练习的更多相关文章
- angular2系列教程(十一)路由嵌套、路由生命周期、matrix URL notation
今天我们要讲的是ng2的路由的第二部分,包括路由嵌套.路由生命周期等知识点. 例子 例子仍然是上节课的例子:
- CRL快速开发框架系列教程十三(嵌套查询)
本系列目录 CRL快速开发框架系列教程一(Code First数据表不需再关心) CRL快速开发框架系列教程二(基于Lambda表达式查询) CRL快速开发框架系列教程三(更新数据) CRL快速开发框 ...
- ScrollView嵌套ListView,GridView数据加载不全问题的解决
我们大家都知道ListView,GridView加载数据项,如果数据项过多时,就会显示滚动条.ScrollView组件里面只能包含一个组件,当ScrollView里面嵌套listView,GridVi ...
- Android 中关于Fragment嵌套Fragment的问题
转载请注明出处:http://www.cnblogs.com/Joanna-Yan/p/5802146.html 问题描述: 在项目中Activity A中嵌套Fragment B,Fragment ...
- C#语句2——循环语句(for循环与for循环嵌套)
循环:反复执行某段代码. 循环四要素:初始条件,循环条件,循环体,状态改变. for(初始条件;循环条件;状态改变) { 循环体 } break ——中断循环,跳出整个循环 continue——停止本 ...
- C#用链式方法表达循环嵌套
情节故事得有情节,不喜欢情节的朋友可看第1版代码,然后直接跳至“三.想要链式写法” 一.起缘 故事缘于一位朋友的一道题: 朋友四人玩LOL游戏.第一局,分别选择位置:中单,上单,ADC,辅助:第二局新 ...
- SQL连接操作符介绍(循环嵌套, 哈希匹配和合并连接)
今天我将介绍在SQLServer 中的三种连接操作符类型,分别是:循环嵌套.哈希匹配和合并连接.主要对这三种连接的不同.复杂度用范例的形式一一介绍. 本文中使用了示例数据库AdventureWorks ...
- 关于对For循环嵌套优化的问题
1.案例描述 由于一次Java面试的笔试题,当时没有写出很好的解决方案,特此专门撰写一篇博客来加以记录,方便日后的查看 面试题目如下:从性能上优化如下代码并说明优化理由? for (int i = 0 ...
- 高级查询---嵌套and分页
高级嵌套语句: 子查询: 语句: select * from 表名 where 列名= ( 子查询语句 ) 注意:子查询语句必须放在小括号呢 可以使用< >=等运算符号,sql serve ...
- [LeetCode] Flatten Nested List Iterator 压平嵌套链表迭代器
Given a nested list of integers, implement an iterator to flatten it. Each element is either an inte ...
随机推荐
- 【leetcode】1254. Number of Closed Islands
题目如下: Given a 2D grid consists of 0s (land) and 1s (water). An island is a maximal 4-directionally ...
- jquery focus()方法 语法
jquery focus()方法 语法 作用:当元素获得焦点时,发生 focus 事件.大理石平台价格 触发focus事件语法:$(selector).focus() 将函数绑定到focus事件语法: ...
- [模板] KMP算法/Border
KMP 算法 KMP (Knuth-Morris-Pratt) 算法是一种在线性时间内匹配文本串和模式串的算法. 称字符串的 Border 集合为 \[ \operatorname {Border} ...
- 小程序上传wx.uploadFile - 小程序请假-请求
小程序上传wx.uploadFile UploadTask wx.uploadFile(Object object) 将本地资源上传到服务器.客户端发起一个 HTTPS POST 请求,其中 cont ...
- Jmeter(五)关联之正则表达式提取器
我们在用Jmeter做接口或者性能测试时,经常会碰到第二个请求提交的的参数要从第一个请求返回的参数中获取,而这些参数值并不是固定的,是动态变化的,这种场景就要用到关联 Jmeter提供了一种叫做正则提 ...
- ACM技能表
看看就好了(滑稽) 数据结构 栈 栈 单调栈 队列 一般队列 优先队列/单调队列 循环队列 双端队列 链表 一般链表 循环链表 双向链表 块状链表 十字链表 邻接表/邻接矩阵 邻接表 邻接多重表 Ha ...
- Apicloud_(模板)登陆注册功能模板
项目已托管到Github上 传送门 不需要使用任何图片资源,需要用到SHA1.js库文件, Apicloud_(接口验证)用户注册头部信息X-APICloud-AppKey生成 传送门 项目全代码放到 ...
- vue中使用iconfont和在旧有的iconfont中添加新的图标
todo 使用参考:https://blog.csdn.net/qq_34802010/article/details/81451278 大体步骤是正确的,具体可参考官方文档和下载下来的代码中的dem ...
- 分布式-信息方式-ActiveMQ静态网络连接信息回流功能
“丢失”的消息 有这样的场景, broker1和 broker2通过 netwoskconnector连接,一些 consumers连接到 broker1,消费 broker2上的消息.消息先被 br ...
- vue-cli构建一个工程
使用前,必须要先按照 node:安装node Vue CLI官方文档:https://cli.vuejs.org/zh/ 安装node地址:https://nodejs.org/zh-cn/downl ...