今天我们来看看一些我写过的java练习题,希望能对你们有帮助
在看题之前我先说个东西:
Scanner 扫描仪扫描器
z这个是一个Java自带的一个类 主要负责的就是数据输入的问题
对于内存而言 数据的输入来源有很多
1.可以是从硬盘上读取数据
2.可以是从互联网上读取数据
3.可以是从输入设备(键盘)读取数据
常见的使用方法
Scanner scanner=new Scanner(System.in);
double a=scanner.nextDouble();
这是一些常用的调用:
nextByte()
nextShort()
nextInt() 常用
nextFloat()
nextDouble() 常用
看这个题要先看题中给了几个数据:华氏温度 摄氏温度
又给了几个换算公式
那就跟着他写,简单来说就三点1:定义变量2:计算3:输出。
下面就是我的代码,要使用上面我科普的小知识点。。。`
import java.util.Scanner;
//调用Java、的一个包,内含scanner
class Demo02_01{
public static void main(String[] args){
//类名 变量名=new 类名();
//1.
System.out.print("请输入摄氏温度:");
Scanner scanner=new Scanner(System.in);
double cel=scanner.nextDouble();
//2.
double fah=cel * 9 / 5 + 32;
//3.
System.out.println("摄氏温度" + cel + ",是华氏温度" + fah);
}
}
这题跟上题差不多,也是一样分三步,先找数据:面积,半径 ,高,p,体积。
1.先把该定义的定义出来,该调用的调用出来。
2.把计算步骤用Java的语句写出来
3.输出数据
下面是我的代码:
import java.util.Scanner;
class Demo02_02{
public static void main(String[] args){
//1.
System.out.print("请输入半径和高:");
Scanner scanner = new Scanner(System.in);
double radius = scanner.nextDouble();
double length = scanner.nextDouble();
//2.
double area = radius * radius * 3.1415926;
double volume = area * length;
//3.
System.out.println("圆柱体的体积为"+volume);
}
}
还是一样,先找数据:这题是让你计算一个数。所以这题数据就是这个三位数。
下面是步骤分析:
1.提示用户输入一个数字(3位数之内)
2.分解数字 统一按照3位数的长度分解
3.将分解数来的数字相加即可
4.把该输出的输出出来
下面是我的代码演示:
import java.util.Scanner;
class Demo02_03{
public static void main(String[] args){
//1.
System.out.print("请输入一个数字:");
Scanner scanner = new Scanner(System.in);
int number = scanner.nextInt();
//2.
int a=number%10;
number/=10;
int b=number%10;
number/=10;
int c=number%10;
//3.
int sum=a+b+c;
//4.
System.out.println(sum);
}
}
先看这题,大家可能不知道什么是格林威治时间,我给大家科普一下,方便大家写这个题。
格林尼治标准时间(旧译格林尼治平均时间或格林威治标准时间;英语:Greenwich Mean Time,GMT)是指位于英国伦敦郊区的皇家格林尼治天文台的标准时间,因为本初子午线被定义在通过那里的经线。自1924年2月5日开始,格林尼治天文台每隔一小时会向全世界发放调时信息。格林尼治标准时间是,自1924年2月5日开始,格林尼治天文台每隔一小时会向全世界发放调时信息。
现在,来看看这个题。
这个题,我们要先计算到现在的时分秒换算公式,在根据我们的时差,一步一步整理出来。详细解说我放在下面的代码里。希望你们能看懂,能对你们有帮助。
下面是我的代码演示:
```java
import java.util.Scanner;
class Demo02_04{
public static void main(String[] args){
System.out.print("请输入时区:");
Scanner scanner=new Scanner(System.in);
int offset=scanner.nextInt();
//总毫秒数
long totalMillis=System.currentTimeMillis();
//总秒数
long totalSeconds=totalMillis/1000;
//总分钟数
long totalMinutes=totalSeconds/60;
//总小时数
long totalHours=totalMinutes/60;
//当前小时数
long currentHour=(totalHours+offset)%24;
//当前分钟数
long currentMinute=totalMinutes%60;
//当前秒数
long currentSecond=totalSeconds%60;
System.out.println(currentHour+":"+currentMinute+":"+currentSecond);
}
}
这个题是一个银行算利息的题,很常见,我们大家每天基本上都能碰到这种情况。
先写出有用的数据:每月存款数 利息
剩下的就是计算
下面是我的代码演示:
class Demo02_05{
public static void main(String[] args){
double money=100;
double rate=0.05;
//计算第一个月的本息和
double sum=money*(1+rate/12);
//计算第二个月的本息和
sum=(sum+money)*(1+rate/12);
//3
sum=(sum+money)*(1+rate/12);
sum=(sum+money)*(1+rate/12);
sum=(sum+money)*(1+rate/12);
sum=(sum+money)*(1+rate/12);
System.out.println(sum);
}
}
这个题就是单纯计算公式 ,跟着公式走直接卡列算是就行
1.提示用户输入数字(
2.按照公式计算
3.把该输出的输出出来
下面是代码演示:
import java.util.Scanner;
class Demo02_06{
public static void main(String[] args){
Scanner scanner = new Scanner(System.in);
//1.提示用户输入第一个坐标 两个值
System.out.print("请输入第一个坐标:");
double x1=scanner.nextDouble();
double y1=scanner.nextDouble();
//2.提示用户输入第二个坐标 两个值
System.out.print("请输入第二个坐标:");
double x2=scanner.nextDouble();
double y2=scanner.nextDouble();
//3.计算两点之间的距离
//Math.pow(a,b) a^b
double distance=Math.pow(Math.pow(x2-x1,2)+Math.pow(y2-y1,2),0.5);
System.out.println(distance);
}
}
这个题跟上面那个题是一个思路,就是算法不一样
1.提醒人输入
2计算
3输出
三步走,这个题一下就解决了
下面是代码演示:
```java
import java.util.Scanner;
class Demo02_07{
public static void main(String[] args){
Scanner scanner=new Scanner(System.in);
System.out.print("请输入三个点的坐标:");
double x1=scanner.nextDouble();
double y1=scanner.nextDouble();
double x2=scanner.nextDouble();
double y2=scanner.nextDouble();
double x3=scanner.nextDouble();
double y3=scanner.nextDouble();
double side1=Math.pow(Math.pow(x1-x2,2)+Math.pow(y1-y2,2),0.5);
double side2=Math.pow(Math.pow(x1-x3,2)+Math.pow(y1-y3,2),0.5);
double side3=Math.pow(Math.pow(x2-x3,2)+Math.pow(y2-y3,2),0.5);
double s=(side1+side2+side3)/2;
double area=Math.pow(s*(s-side1)*(s-side2)*(s-side3),0.5);
//System.out.println(area);
System.out.printf("area=%.2f\n",area);
}
}
今天的分享例题就到这里了,感谢大家的观看。