首页 > 编程语言 >【参考答案】java基础练习:变量、数据类型、输入、输出、运算符

【参考答案】java基础练习:变量、数据类型、输入、输出、运算符

时间:2023-01-11 21:58:29浏览次数:68  
标签:Scanner int 数据类型 System public 运算符 println 参考答案 out

 

练习1:判断输入的值是否是偶数,另外,要处理输入错误

(目的:熟悉输入、输出,特别是Scanner对象的方法)

package com.qzcsbj;

import java.util.Scanner;

public class Test {
    public static void main(String[] args) {
        Scanner input = new Scanner(System.in);

        System.out.print("请输入一个整数:");
        if (input.hasNextInt()) {
            int num = input.nextInt();
            if (num % 2 == 0) {
                System.out.println(num + "是偶数");
            } else {
                System.out.println(num + "是奇数");
            }
        } else {
            System.out.println("输入无效!");
        }
    }
}

 

 

 

练习2:输入并输出姓名、年龄、身高

package com.qzcsbj;

import java.util.Scanner;

public class Test {
    public static void main(String[] args) {
        Scanner input = new Scanner(System.in);
        System.out.print("请输入您的姓名:"); 
        String name = input.next(); 
        System.out.print("请输入您的年龄:");
        int age = input.nextInt();
        System.out.print("请输入您的身高:");
        double height = input.nextDouble();
        System.out.println("姓名:" + name);
        System.out.println("年龄:" + age);
        System.out.println("身高:" + height);
    }
}

 

 

练习3:从控制台获取Java、Oracle、HTML三门课程的成绩,计算总分和平均分

平均分保留2位小数,要求四舍五入

package com.qzcsbj;

import java.text.DecimalFormat;
import java.util.Scanner;

/**
 * @公众号 : 全栈测试笔记
 * @博客 : www.cnblogs.com/uncleyong
 * @微信 : ren168632201
 * @描述 : <>
 */
public class Test {
    public static void main(String[] args) {
        Scanner input = new Scanner(System.in);

        System.out.print("请输入Java成绩:");
        int java = input.nextInt();
        System.out.print("请输入Oracle成绩:");
        int oracle = input.nextInt();
        System.out.print("请输入HTML成绩:");
        int html = input.nextInt();

        double sum = java + oracle + html; 
        double avg = sum / 3; 
        DecimalFormat df = new DecimalFormat("#.00");

        System.out.println("---------------------------------");
        System.out.println("Java\tOracle\tHTML");
        System.out.println(java + "\t\t" + oracle + "\t\t" + html);
        System.out.println("---------------------------------");
        System.out.println("总分:" + sum);
        System.out.println("平均分:" + df.format(avg));
    }
}

 

 

练习4:输入一个数字,反转输出,如:输入123,输出321

package com.qzcsbj;

import java.util.Scanner;

public class Test {
    public static void main(String[] args) {
        Scanner sc=new Scanner(System.in);
        System.out.print("请输入一个整数:");
        if (sc.hasNextInt()) {
            int num = sc.nextInt();
            while (num != 0) {
                int res = num % 10;
                System.out.print(res);
                num = num / 10;
            }
        }else {
            System.out.println("输入有误。");
        }
    }
}

 

 

练习5:输入tom和jack的年龄,比较年龄并输出相差多少岁,要求使用条件运算符

package com.qzcsbj;

import java.util.Scanner;

public class Test {
    public static void main(String[] args) {
        Scanner input = new Scanner(System.in);

        System.out.print("请输入tom的年龄:");
        int tom = input.nextInt();
        System.out.print("请输入jack的年龄:");
        int jack = input.nextInt();

        String result = (tom - jack > 0 ? "tom比jack大:" + (tom - jack)
                : "jack比tom大:" + (jack - tom)) + "岁";

        System.out.println(result);
    }
}

 

 

练习6:交换两个数值变量的值(至少两种方法)

package com.qzcsbj;

/**
 * @公众号 : 全栈测试笔记
 * @博客 : www.cnblogs.com/uncleyong
 * @微信 : ren168632201
 * @描述 : <>
 */
public class Test {
    public static void main(String[] args) {
        int a = 1,b = 2;
        // 方法一:不通过中间变量
        // a = a + b;
        // b = a - b;
        // a = a - b;

        // 方法二:通过中间变量
        int temp=a;
        a=b;
        b=temp;
        
        System.out.println(a);
        System.out.println(b);
    }
}

  

练习7:下面结果分别是?并说明原因

int a = 97;
char b = a;
System.out.println(b);

 

检查异常,int是4个字节,char是2个字节,需要强制类型转换,可能会损失精度

 

char c = 97;
System.out.println(c);

 

输出结果:a

97不是被当做int来处理

 

        int m = 3;
        int n = m++ + ++m;
        System.out.println("m:"+m+", n:"+n);

 

m:5, n:8

一目运算符++优先级高于算术运算符+

运算符相同,从左到右执行

所以,第一个m是3,然后++后是4,第二个m,++m后是5,所以n是3+5=8

 

练习8:下面结果分别是?说明原因

public class Test {
    public static void main(String[] args) {
        short a=1;
        a = a+1;
        System.out.println(a);
    }
}

 

public class Test {
    public static void main(String[] args) {
        short b=1;
        b+=1;
        System.out.println(b);
    }
}

  

第一个报错,第二个不会

第二个复合赋值运算符会自动地将运算结果转型为其左操作数的类型,而第一个简单赋值运算不会。

 

【bak】

原文会持续更新,原文地址:https://www.cnblogs.com/uncleyong/p/17043874.html

 

标签:Scanner,int,数据类型,System,public,运算符,println,参考答案,out
From: https://www.cnblogs.com/uncleyong/p/17043874.html

相关文章

  • Python运算符
    假设a=10b=201.算数运算符运算符描述+加-减*乘/除%取余数**幂——次方//取整除 2.比较(关系)运算符运算符描述==等于......
  • 数据类型拓展以及面试题讲解
    数据类型拓展以及面试题讲解拓展调试代码的方式现在待调试代码行处标记,再点击甲虫符号进行调试。......
  • KingbaseES date 数据类型的两种格式
    关于date数据类型,Oracle与PostgreSQL格式是不同的,Oracle是日期+时间的类型,而PG则只有日期。KingbaseESOracle模式则同时实现了二者类型,用户在使用时,需要注意所......
  • C++_运算符重载
    operatoroverloadingCustomizestheC++operatorsforoperandsofuser-definedtypes.std::addressofstd::addressof模板函数定义在<memory>头文件中,用于获取类或......
  • JavaScript学习笔记—运算符
    运算符(操作符):可以用来对一个或多个操作数(值)进行运算1.算术运算符:+加法运算符-减法运算符*乘法运算符/触发运算符**幂运算%模运算算术运算时,除了字符串的加......
  • 软件开发入门教程网之MySQL 运算符
    本章节我们主要介绍MySQL的运算符及运算符的优先级。MySQL主要有以下几种运算符:算术运算符比较运算符逻辑运算符位运算符​​算术运算符​​MySQL支持的算术运算符包括......
  • 软件开发入门教程网之MySQL 运算符
    本章节我们主要介绍MySQL的运算符及运算符的优先级。MySQL主要有以下几种运算符:算术运算符比较运算符逻辑运算符位运算符算术运算符MySQL支持的算术运算符包......
  • ES6-展开运算符
    一。数组展开运算符1.怎么用:注:扩展运算符,可以将一个数组转为用逗号分隔的参数序列;...[1,2,3]-----1,2,3console.log(Math.max(...[1,2,3,4]));//相当于以下......
  • Java与SQL对应数据类型转换表
    *ORM编程思想(objectrelationalmapping)*一个数据表对应一个java类*表中的一条记录对应java类的一个对象*表中的一个字段对应java类的一个属性Java类型SQL类......
  • 数据集成引擎 异构数据类型
    ......