一,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键盘输入相关知识:

从键盘获取输入值的具体实现步骤:

  1. 导包:import java.util.Scanner;
  2. Scanner的实例化:Scanner scan=new Scanner(System.in);
  3. 调用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嵌套练习的更多相关文章

  1. angular2系列教程(十一)路由嵌套、路由生命周期、matrix URL notation

    今天我们要讲的是ng2的路由的第二部分,包括路由嵌套.路由生命周期等知识点. 例子 例子仍然是上节课的例子:

  2. CRL快速开发框架系列教程十三(嵌套查询)

    本系列目录 CRL快速开发框架系列教程一(Code First数据表不需再关心) CRL快速开发框架系列教程二(基于Lambda表达式查询) CRL快速开发框架系列教程三(更新数据) CRL快速开发框 ...

  3. ScrollView嵌套ListView,GridView数据加载不全问题的解决

    我们大家都知道ListView,GridView加载数据项,如果数据项过多时,就会显示滚动条.ScrollView组件里面只能包含一个组件,当ScrollView里面嵌套listView,GridVi ...

  4. Android 中关于Fragment嵌套Fragment的问题

    转载请注明出处:http://www.cnblogs.com/Joanna-Yan/p/5802146.html 问题描述: 在项目中Activity A中嵌套Fragment B,Fragment ...

  5. C#语句2——循环语句(for循环与for循环嵌套)

    循环:反复执行某段代码. 循环四要素:初始条件,循环条件,循环体,状态改变. for(初始条件;循环条件;状态改变) { 循环体 } break ——中断循环,跳出整个循环 continue——停止本 ...

  6. C#用链式方法表达循环嵌套

    情节故事得有情节,不喜欢情节的朋友可看第1版代码,然后直接跳至“三.想要链式写法” 一.起缘 故事缘于一位朋友的一道题: 朋友四人玩LOL游戏.第一局,分别选择位置:中单,上单,ADC,辅助:第二局新 ...

  7. SQL连接操作符介绍(循环嵌套, 哈希匹配和合并连接)

    今天我将介绍在SQLServer 中的三种连接操作符类型,分别是:循环嵌套.哈希匹配和合并连接.主要对这三种连接的不同.复杂度用范例的形式一一介绍. 本文中使用了示例数据库AdventureWorks ...

  8. 关于对For循环嵌套优化的问题

    1.案例描述 由于一次Java面试的笔试题,当时没有写出很好的解决方案,特此专门撰写一篇博客来加以记录,方便日后的查看 面试题目如下:从性能上优化如下代码并说明优化理由? for (int i = 0 ...

  9. 高级查询---嵌套and分页

    高级嵌套语句: 子查询: 语句: select * from 表名 where 列名= ( 子查询语句 ) 注意:子查询语句必须放在小括号呢 可以使用< >=等运算符号,sql serve ...

  10. [LeetCode] Flatten Nested List Iterator 压平嵌套链表迭代器

    Given a nested list of integers, implement an iterator to flatten it. Each element is either an inte ...

随机推荐

  1. 在github新建一个项目里需要哪些文件及作用

    1.README.md文件 关于项目的介绍和使用方法. 2.  .gitignore文件 上传项目时不需要传的文件,最常用的就是“node_modules/",如下: 详细的介绍可以去git ...

  2. HTML标签与属性

    HTML中常用的一些标签和属性. 1.lang属性:搜索引擎      en:英文,  zh:中文 2.meta:元数据     charset属性:字符集编码方式 3.h1~h6:标题   一级标题 ...

  3. 5.聚类算法k-means

    聚类与分类的区别在于,是在没有给定划分类别的情况下,更具数据相似度进行样本分组的一种办法,是一种非监督的学习算法,聚类的输入时一组未被标记的样本,聚类更具数据自身的距离或者相似度将其划分为若干组,划分 ...

  4. Hedera: Dynamic Flow Scheduling for Data Center Networks

    摘要: 当今的数据中心为成千上万台计算机的群集提供了巨大的聚合带宽, 但是即使在最高端的交换机中,端口密度也受到限制,因此数据中心拓扑通常由多根树组成,这些树在任何给定的主机对之间都具有许多等价路径. ...

  5. 智能指针之shared_ptr基本概述

    1.shared_ptr允许有多个指针指向同一个对象,unique_ptr独占所指向的对象. 2.类似于vector,智能指针也是模板.创建智能指针: shared_ptr<string> ...

  6. Topcoder SRM 674 Div.2题解

    T1 解题思路 这题应该不是很难,主要是题意理解问题. 注意给出的两个数组里映射关系已经对应好了,只要判断是否为双射即可 参考程序 #include <bits/stdc++.h> usi ...

  7. Oracle 监听hang住

    1.数据库正常启动: [oracle@db ~]$ sqlplus / as sysdba SQL*Plus: Release 11.2.0.4.0 Production on Sat Aug 24 ...

  8. SSH三大框架整合配置详解

    首先,三大框架整合,肯定是要导入相当多的jar包,这是不容置疑的!     这里就不一一列举了,直接截图吧:             (1) 基于配置文件的整合:        第一步:我们需要在we ...

  9. log4j动态配置参数

    特别提示:本人博客部分有参考网络其他博客,但均是本人亲手编写过并验证通过.如发现博客有错误,请及时提出以免误导其他人,谢谢!欢迎转载,但记得标明文章出处:http://www.cnblogs.com/ ...

  10. 何为受控组件(controlled component)

    在 HTML 中,类似 , 和 这样的表单元素会维护自身的状态,并基于用户的输入来更新:当用户提交表单时,前面提到的元素的值将随表单一起被发送.但在 React 中会有些不同,包含表单元素的组件将会在 ...