【java入门】Java语言程序设计(基础篇)部分练习题 第一、二章

Java语言程序设计(第十版)(基础篇)

第一章

1.1显示三条信息

显示Welcome to Java,welcome to Computer Science,Programming is fun三条信息。

tips:字符串用双引号

public class Exercise01_01{
    
    
	public static void main(String[] args){
    
    
		System.out.println("Welcome to Java");
		System.out.println("welcome to Computer Science");
		System.out.println("Programming is fun");
	}
}

在这里插入图片描述

1.3显示图案

public class Exercise01_03{
    
    
	public static void main(String[] args){
    
    
		System.out.println("   J     A    V     V    A ");
		System.out.println("   J    A A    V   V   A A");
		System.out.println("J  J   AAAAA    V V   AAAAA");
		System.out.println(" JJ   A     A    V   A     A");
	}
}

在这里插入图片描述

1.5 计算表达式

计算(9.5×4.5-2.5×3)/(45.5-3.5)表达式

public class Exercise01_05{
    
    
	public static void main(String[] args){
    
    
		System.out.println((9.5*4.5-2.5*3)/(45.5-3.5));
	}
}

在这里插入图片描述

1.7近似求p

在程序中用1.0代替1

public class Exercise01_07{
    
    
	public static void main(String[] args){
    
    
		System.out.println(4*(1-1.0/3+1.0/5-1.0/7+1.0/9-1.0/11));
	}
}

在这里插入图片描述

1.8圆的周长和面积

计算半径是5.5的圆的周长和面积。

public class Exercise01_08{
    
    
	public static void main(String[] args){
    
    
		System.out.println(2*5.5*3.14159);//周长
		System.out.println(5.5*5.5*3.14159);//面积
		
	}
}

在这里插入图片描述

1.10以英里计的平均速度

一个人跑步45分钟30秒内跑了14公里。编写一个程序显示以每小时多少英里为单位的平均速度值。(注意,一英里等于1.6公里。)

tips:注意时间和距离的单位转化

> public class Exercise01_10{
    
     	public static void main(String[] args){
    
    
> 		System.out.println((14/45.5)*60/1.6); 	} }

在这里插入图片描述

1.11人口估算

  • 每7秒有一个诞生
  • 每13秒有一个人死亡
  • 每45秒有一个移民迁入
  • 编写程序,显示未来5年的每年的人口数。假设当前的人口是312 032 486,每年有365天。提示:Java中,两个整数相除,结果还是整数,小数部分被去掉。例如:5/4等于1(而不是1.25),10/4等于2(而不是2.5).如果想得有小数部分的精确结果,进行除法运算的两个值之一必须是一个具有小数点的数值。例如:5.0/4等于1.25,10/4.0等于2.5。

tips:
人口基数+出生的-死亡的+迁入的
审题,显示每年的!

 public class Exercise01_11{
    
    
	public static void main(String[] args){
    
    
		System.out.println(312032486+1*(365*24*60*60/7.0-365*24*60*60/13.0+365*24*60*60/45.0));
		System.out.println(312032486+2*(365*24*60*60/7.0-365*24*60*60/13.0+365*24*60*60/45.0));
		System.out.println(312032486+3*(365*24*60*60/7.0-365*24*60*60/13.0+365*24*60*60/45.0));
		System.out.println(312032486+4*(365*24*60*60/7.0-365*24*60*60/13.0+365*24*60*60/45.0));
		System.out.println(312032486+5*(365*24*60*60/7.0-365*24*60*60/13.0+365*24*60*60/45.0));
	}
}

在这里插入图片描述

1.12以公里计的平均速度

一个人1小时40分钟35秒内跑了24英里。编写一个程序显示以每小时多少公里为单位的平均速度值。(1英里等于1.6公里。)

tips:注意写分数的时候要写小数。

public class Exercise01_12{
    
    
	public static void main(String[] args){
    
    
		System.out.println(24/(1+(40+35.0/60)/60)*1.6);
	}
}

在这里插入图片描述

1.13代数:求解2×2线性方程

可以使用Cramer规则:
ax+by=e
cx+dy=f
x=(ed-bf)/(ad-bc) ; y=(af-ec)/(ad-bc)
求解下面的2×2线性方程组:
3.4x+50.2y=44.5
2.1x+0.55y=5.9。

public class Exercise01_13{
    
    
	public static void main(String[] args){
    
    
		System.out.println("x is ");
		System.out.println((44.5*0.55-50.2*5.9)/(3.4*0.55-2.1*50.2));
		System.out.println("y is ");
		System.out.println((3.4*5.9-2.1*44.5)/(3.4*0.55-2.1*50.2));
	}
}

在这里插入图片描述

第二章

2.1将摄氏温度转化为华氏温度

编写程序,从控制台读入double型的摄氏温度,然后将其转换为华氏温度,并且显示结果。转换公式如下所示:
华氏温度=(9/5)*摄氏温度+32
提示:在java中,9/5的结果是1,但是9.0/5的结果是1.8。

下面是一个运行示例:

Enter a degree in Celsius: 43
43 Celsius is 109.4 Fahrenheit

public class Exercise02_01{
    
    
	public static void main(String[] args){
    
    
		java.util.Scanner input = new java.util.Scanner(System.in);
		System.out.print("Enter a temperature in Celsius: ");
		double cel = input.nextDouble();
		double fra = cel*(9/5.0)+32;
		System.out.println((int)cel+" Celsius is "+fra+"Fahrenheit");
	}
}

在这里插入图片描述

2.2计算圆柱体的体积

读入圆柱体的半径和高,计算体积。
下面是运行示例:

Enter the radius and length of a cylinder: 5.5 12
The are is 95.0331
The volume is 1140.4

import java.math.BigDecimal;
import java.text.DecimalFormat;
public class Exercise02_02{
    
    
	public static void main(String[] args){
    
    
		java.util.Scanner input = new java.util.Scanner(System.in);
		
		System.out.print("Enter the radius and length of a cylinder: ");
		double radius = input.nextDouble();
		double length = input.nextDouble();
		
		double area = radius * radius * 3.14159;
		double volume = area * length;
		
		BigDecimal bd = new BigDecimal(area);
        BigDecimal bd2 = bd.setScale(4, BigDecimal.ROUND_HALF_UP);
		System.out.print("The area is ");
        System.out.println(bd2);
		
		BigDecimal bd3 = new BigDecimal(volume);
        BigDecimal bd4 = bd3.setScale(1, BigDecimal.ROUND_HALF_UP);
		System.out.print("The volume is ");
        System.out.println(bd4);

		
	}
}

在这里插入图片描述

2.3将英尺转化为米

注意,一英尺等于0.305米。
tips:注意保留小数点后两位。

运行示例:16.5

import java.math.BigDecimal;
import java.text.DecimalFormat;
public class Exercise02_02{
    
    
	public static void main(String[] args){
    
    
		java.util.Scanner input = new java.util.Scanner(System.in);
		
		System.out.print("Enter the radius and length of a cylinder: ");
		double radius = input.nextDouble();
		double length = input.nextDouble();
		
		double area = radius * radius * 3.14159;
		double volume = area * length;
		
		BigDecimal bd = new BigDecimal(area);
        BigDecimal bd2 = bd.setScale(2, BigDecimal.ROUND_HALF_UP);
		System.out.print("The area is ");
        System.out.println(bd2);
		
		BigDecimal bd3 = new BigDecimal(volume);
        BigDecimal bd4 = bd3.setScale(2, BigDecimal.ROUND_HALF_UP);
		System.out.print("The volume is ");
        System.out.println(bd4);

		
	}
}

在这里插入图片描述

2.4将磅转换为千克

运行示例:55.5

 public class Exercise02_04{
    
    
	public static void main(String[] args){
    
    
		System.out.print("Enter a number in pounds: ");
		java.util.Scanner input = new java.util.Scanner(System.in);
		Float pounds = input.nextFloat();
		double kg = pounds*0.454;
		System.out.println(pounds+" pounds is "+kg+" kilograms");
	}
}

在这里插入图片描述

2.5计算小费

读入一笔费用和酬金率,计算酬金和总钱数。

运行示例:费用10美元,酬金率15%

public class Exercise02_05{
    
    
	public static void main(String[] args){
    
    
		System.out.print("Enter a number in pounds: ");
		java.util.Scanner input = new java.util.Scanner(System.in);
		double subtotal = input.nextDouble();
		double gratuityrate = input.nextDouble();
		double gratuity = (gratuityrate*subtotal)/100;
		double total = gratuity+subtotal;
		System.out.print("The gratuity is $"+gratuity+" and total is $"+total);
	}
}

在这里插入图片描述

2.6求一个整数各位数的和

public class Exercise02_06{
    
    
	public static void main(String[] args){
    
    
		System.out.print("Enter a number between 0 and 1000: ");
		java.util.Scanner input = new java.util.Scanner(System.in);
		int Number = input.nextInt();
		int num1 = Number;
		int num2 = Number;
		int sum = 0;
		for(int i=1;i<=4;i++){
    
    
		num1 = num2%10;
		num2 = num2/10;
		sum = sum+num1;
		}
		System.out.print("The sum of the digits is "+sum);
	}
}

在这里插入图片描述

2.13财务应用程序:复利值

假设你每月向银行账户存100美元,年利率为5%,那么每月利率是0.05/12=0.00417。第一个月之后,账户上的值就变成:
100*(1+0.00417)=100.417
第二个月之后,账户上的值就变成:
(100+100.417)(1+0.00417)=201.252
第三个月之后,账户上的值就变成:
(100+201.252)
(1+0.00417)=302.507
以此类推。
编写代码显示六个月后账户上的钱数。

public class Exercise02_13{
    
    
	public static void main(String[] args){
    
    
		java.util.Scanner input = new java.util.Scanner(System.in);
		System.out.print("Enter the monthly saving ampunt: ");
		double amount = input.nextDouble();
		double value = 0;
		double rate=0.00417;
		for(int i=1;i<=6;i++){
    
    
			value=(amount+value)*(1+rate);
		}
		System.out.print("After the sixth month, the account value is $"+value);
	}
}

在这里插入图片描述

补充1:Notepad++如何快速注释

在这里插入图片描述

补充2:print和println的区别

在这里插入图片描述

补充3:保留小数位

资料:
https://www.jianshu.com/p/fa31f7ae8664
https://www.iteye.com/blog/mouselearnjava-1961008

补充4:计算带根号的数

使用Math.pow(a,b)计算a的开b次方

猜你喜欢

转载自blog.csdn.net/qq_51669241/article/details/113850684
今日推荐