Java程序设计练习题大全
目录
- Java程序设计练习题大全
- java主方法中的顺序结构
- 1.Java顺序结构之无输入求多边形的面积
- 2.Java顺序结构之无输入求平抛小球与抛出点之间的距离
- 3.Java顺序结构之无输入输出给定图案
- 4.Java顺序结构之无输入求星期几
- 5.Java顺序结构之有输入格式化输出平抛小球与抛出点之间的距离
- 6.Java顺序结构之数学函数之求两数最大者
- 7.Java顺序结构之数学函数之根据三角形三边长求面积
- 8.Java顺序结构之数学函数之三角函数
- 9.Java顺序结构之基本数据类型转换
- 10.Java顺序结构综合练习一之银行复利计息收益计算
- 11.Java顺序结构综合练习二之温度换算
- 12.Java顺序结构综合练习二之温度换算
- 13.Java顺序结构综合练习三之金融投资收益计算
java主方法中的顺序结构
1.Java顺序结构之无输入求多边形的面积
/**
* 任务:计算一个由正方形和等腰三角形组成的多边形的面积,其中正方形边长4厘米,等腰三角形底边为正方形的一条边,其到对角顶点的高为2.6厘米。
* 类名为:PolygonalArea
*/
public class PolygonalArea {
public static void main(String[] args) {
int square_length = 4; // 声明int型变量square_length用于表示正方形边长,并赋值 4
double triangle_h = 2.6; // 声明double型变量triangle_h用于表示三角形底边上的高,并赋值 2.6
// 请在下面的Begin-End之间按照注释中给出的提示编写正确的代码
/********** Begin **********/
// 第1步:计算正方形面积,赋值给变量area_square
double area_square = square_length * square_length;
// 第2步:计算等腰三角形面积,赋值给变量area_triangle
double area_triangle = (square_length * triangle_h)/2;
// 第3步:计算多边形面积,即正方形面积和等腰三角形面积,赋值给变量area_total
double area_total = area_square + area_triangle;
// 第4步:打印输出多边形面积,即使用不换行输出语句输出变量area_total的值 输出格式:该多边形的面积为 xxx 其中xxx 为多边形的面积
System.out.print("该多边形的面积为 "+area_total);
/********** End **********/
}
}
2.Java顺序结构之无输入求平抛小球与抛出点之间的距离
/**
* 任务:一小球以 10米/秒 的水平速度平抛,重力加速度取9.8米/秒2,
* 在忽略空气阻力的情况下,求经过时间 3 秒后,
* 小球所在位置与抛出点之间的距离 (假设小球距地面足够高)。
* 类名为:Distance
*/
public class Distance {
public static void main(String[] args) {
double g = 9.8; // 声明浮点型变量 g,用于表示重力加速度
int v0 = 10; // 声明整型变量 v0, 用于表示水平初速度
int t = 3; // 声明整型变量 t, 用于表示小球飞行的时间
// 请在下面的Begin-End之间按照注释中给出的提示编写正确的代码
/********** Begin **********/
// 第一步:计算水平距离,并赋值给s
double s = v0*t;
// 第二步:计算垂直距离,并赋值给h
double h = (g*(t*t))/2;
// 第三步:计算小球与原点的距离,并赋值给d,Math.sqrt()表示的是对括号里的值求平方根
double d = Math.sqrt(s*s+h*h);
// 第四步:打印出小球与原点的距离d 输出格式:小球所在位置与抛出点之间的距离为 xxx 米。 其中 xxx 为求出的距离
System.out.print("小球所在位置与抛出点之间的距离为 " +d+ " 米。");
/********** End **********/
}
}
3.Java顺序结构之无输入输出给定图案
/**
* 输出一个由*组成的实心等腰三角形
* 任务:输出实心等腰三角形。
* 类名为:OutputTriangle
*/
public class OutputTriangle {
public static void main(String[] args) {
// 请在下面的 Begin-End 处,按照所给的代码注释完成相应代码的编写
/********** Begin **********/
// 使用空格和*,向控制台输出一个高为4,底为7的等腰三角形,最后一个输出采用不换行输出
System.out.println(" *");
System.out.println(" ***");
System.out.println(" *****");
System.out.println("*******");
/********** End **********/
}
}
4.Java顺序结构之无输入求星期几
/**
* 任务:2017 年 1 月 1 日是星期天,求 10 天后是星期几。
* 类名为:Week
*/
public class Week {
public static void main(String[] args) {
// 请在下面的Begin-End之间按照注释中给出的提示编写正确的代码
/********** Begin **********/
// 第一步:声明 int 型变量 pre,值为一周的总天数
int pre=7;
// 第二步:声明 int 型变量 sum,值为几天后加上周几(2017 年 1 月 1 日是周几)的值
int sum=7+10;
// 第三步:求天数除以一周的天数的余数,这个余数就是10天后为周几的值了
int weeknum=sum%pre;
// 第四步:格式化输出这个值 如果结果是1,那么输出格式为:10天后是星期 1。
System.out.print("10天后是星期 "+weeknum+"。");
/********** End **********/
}
}
5.Java顺序结构之有输入格式化输出平抛小球与抛出点之间的距离
/**
* 任务:一小球以 v0 米/秒 的水平速度平抛,重力加速度取9.8米/秒2,
* 在忽略空气阻力的情况下,求经过时间 t 秒后,
* 小球所在位置与抛出点之间的距离 (假设小球距地面足够高)。
* 类名为:Distance
*/
import java.util.Scanner;
public class Distance {
public static void main(String[] args) {
double g = 9.8; // 声明浮点型变量 g,用于表示重力加速度
// 请在下面的Begin-End之间按照注释中给出的提示编写正确的代码
/********** Begin **********/
// 第一步:创建一个Scanner的实例对象,命名为reader
Scanner reader = new Scanner(System.in);
// 第二步:获取键盘第一次输入的值,将其命名为V0,用于表示水平初速度
double V0 = reader.nextDouble();
// 第三步:获取键盘第二次输入的值,将其命名为t,用于表示小球飞行的时间
int t = reader.nextInt();
// 第四步:计算水平距离,并赋值给s
double s = V0 * t;
// 第五步:计算垂直距离,并赋值给h
double h = 0.5*g*t*t;
// 第六步:计算小球与原点的距离,并赋值给d,Math.sqrt()可以用来对括号里的值求平方根
double d=Math.sqrt(s*s+h*h);
// 第七步:打印出小球与原点的距离d,最后结果四舍五入后保留两位小数
System.out.printf("%.2f",d);
/********** End **********/
}
}
6.Java顺序结构之数学函数之求两数最大者
/**
* 任务:获取键盘两次输入的值,输出两者中的最大数。
* 类名为:CompareMax
*/
import java.util.Scanner;
public class CompareMax {
public static void main(String[] args) {
Scanner reader = new Scanner(System.in);
// 请在下面的Begin-End之间按照注释中给出的提示编写正确的代码
/********** Begin **********/
// 第一步:获取键盘第一次输入的值
double a = reader.nextDouble();
// 第二步:获取键盘第二次输入的值
double b = reader.nextDouble();
// 第三步:比较两数大小
double max = Math.max(a,b);
double min = Math.min(a,b);
// 第四步:不换行输出最大的那个值
System.out.print(max);
/********** End **********/
}
}
7.Java顺序结构之数学函数之根据三角形三边长求面积
/**
* 任务:根据从键盘输入的三角形的三个边长,求出三角形的面积。
* 类名为:TriangleArea
*/
import java.util.Scanner;
public class TriangleArea {
public static void main(String[] args) {
Scanner reader = new Scanner(System.in);
// 请在下面的Begin-End之间按照注释中给出的提示编写正确的代码
/********** Begin **********/
// 第一步:获取键盘三次输入的值
double a = reader.nextDouble();
double b = reader.nextDouble();
double c = reader.nextDouble();
// 第二步:根据三角形面积公式求取三角形面积
double p = (a+b+c)/2;
double s = Math.sqrt(p*(p-a)*(p-b)*(p-c));
// 第三步:格式化输出三角形的面积
System.out.printf("三角形的面积为:%.2f",s);
/********** End **********/
}
}
8.Java顺序结构之数学函数之三角函数
/**
* 任务:从键盘输入的值分别为三角形的 a、b 两条边长和两边夹角 C 的角度,求出该三角形的面积,请对最终结果保留两位小数。
* 类名为:TriangleArea
*/
import java.util.Scanner;
public class TriangleArea {
public static void main(String[] args) {
Scanner reader = new Scanner(System.in);
// 请在下面的Begin-End之间按照注释中给出的提示编写正确的代码
/********** Begin **********/
// 第一步:获取键盘第一次输入的值
double a = reader.nextDouble();
// 第二步:获取键盘第二次输入的值
double b = reader.nextDouble();
// 第三步:获取键盘第三次输入的值
double c = reader.nextDouble();
// 第四步:求sinC的值
double d = Math.sin(Math.toRadians(c));
// 第五步:根据三角形面积公式求取三角形面积,此处用0.5代替1/2
double s = 0.5 * (a*b*d);
// 第六步:不换行输出三角形的面积
System.out.printf("%.2f",s);
/********** End **********/
}
}
9.Java顺序结构之基本数据类型转换
/**
* 任务:变量 a 是一个 double 型的变量,请将其强转为 int 型,
* 变量 b 是一个 short 型的变量,请将其转换为 double 型。
* 输出格式:先换行输出变量 a 转换后的结果,再不换行输出 b 转换后的结果。
* 类名为:Transform
*/
import java.util.Scanner;
public class Transform {
public static void main(String[] args) {
//创建一个Scanner的实例对象,命名为reader
Scanner reader = new Scanner(System.in);
// double型变量a
double a = reader.nextDouble();
// short型变量b
short b = reader.nextShort();
// 请在下面的Begin-End之间按照注释中给出的提示编写正确的代码
/********** Begin **********/
// 第一步:将double型变量a强转为int型
int c =(int)a;
// 第二步:将short型变量b转换为double型
double d = (double)b;
// 第三步:换行输出变量a转换后的结果
System.out.println(c);
// 第四步:不换行输出变量b转换后的结果
System.out.print(d);
/********** End **********/
}
}
10.Java顺序结构综合练习一之银行复利计息收益计算
/**
* 任务:假定一个用户每月向一个储蓄帐户中存 1000 元人民币,年利率为 2.25%。那么月利率为 0.0225/12=0.001875。
* 编写一个程序,输出 6 个月后的账户金额。
* 类名为:BankRate
*/
// 请在下面的Begin-End之间按照注释中给出的提示编写正确的代码
/********** Begin **********/
// 第一步:创建一个名为 BankRate 的公开类
import java.util.*;
public class BankRate {
// 第二步:在这个类中定义主方法
public static void main(String[] args) {
// 第三步:在主方法中计算第六个月后总资金为多少
int i;
double a=0.001875,sum=1000;
for(i=0;i<6;i++)
sum=sum*(1+0.001875);
// 第四步:格式化输出六个月后账户的总金额,结果保留两位小数
System.out.printf("%.2f",sum);
}
}
/********** End **********/
11.Java顺序结构综合练习二之温度换算
/**
* 任务:编写一个程序,依次将摄氏温度为 1°、2°、3°、4°、5° 所对应的华氏温度的值四舍五入后保留两位小数输出, 摄氏温度和华氏温度转换公式如下:
* fahrenheit(华氏温度) = ( 9/5 ) × celsius(摄氏温度) + 32。
* 类名为:Temperature
*/
// 请在下面的Begin-End之间按照注释中给出的提示编写正确的代码
/********** Begin **********/
// 第一步:创建一个名为 Temperature 的公开类
import java.util.*;
public class Temperature {
// 第二步:在这个类中定义主方法
public static void main(String[] args) {
// 第三步:在主方法中依次计算摄氏温度为 1°、2°、3°、4°、5° 所对应的华氏温度的值,四舍五入后保留两位小数,最后格式化输出华氏温度的值,例子:摄氏温度为1时,华氏温度为xx。
for(int i=1;i<6;i++)
{
double sum=((double) 9/5)*i+32;
System.out.print("摄氏温度为"+i+"时,华氏温度为");
System.out.printf("%.2f",sum);
System.out.println("。");
}
}
}
/********** End **********/
12.Java顺序结构综合练习二之温度换算
/**
* 任务:编写一个程序,依次将摄氏温度为 1°、2°、3°、4°、5° 所对应的华氏温度的值四舍五入后保留两位小数输出, 摄氏温度和华氏温度转换公式如下:
* fahrenheit(华氏温度) = ( 9/5 ) × celsius(摄氏温度) + 32。
* 类名为:Temperature
*/
// 请在下面的Begin-End之间按照注释中给出的提示编写正确的代码
/********** Begin **********/
// 第一步:创建一个名为 Temperature 的公开类
import java.util.*;
public class Temperature {
// 第二步:在这个类中定义主方法
public static void main(String[] args) {
// 第三步:在主方法中依次计算摄氏温度为 1°、2°、3°、4°、5° 所对应的华氏温度的值,四舍五入后保留两位小数,最后格式化输出华氏温度的值,例子:摄氏温度为1时,华氏温度为xx。
for(int i=1;i<6;i++)
{
double sum=((double) 9/5)*i+32;
System.out.print("摄氏温度为"+i+"时,华氏温度为");
System.out.printf("%.2f",sum);
System.out.println("。");
}
}
}
/********** End **********/
13.Java顺序结构综合练习三之金融投资收益计算
/**
* 任务:编写程序,读入投资额、年利率和投资年限,利用题目所给公式计算投资的未来价值
* 类名为:Finance
*/
// 请在下面的Begin-End之间按照注释中给出的提示编写正确的代码
/********** Begin **********/
// 第一步:导入Scanner类
import java.util.*;
// 第二步:创建一个名为 Finance 的公开类
public class Finance {
// 第三步:定义主方法
public static void main(String[] args)
{
// 第四步:在主方法中,根据题目给出的计算投资的未来价值公式来计算未来价值
Scanner reader= new Scanner(System.in);
double a=reader.nextDouble();
double b=reader.nextDouble();
int c=reader.nextInt();
double sum=a*Math.pow(1+b/12,12*c);
System.out.printf("%.2f",sum);
// 第五步:格式化输出未来价值,结果保留两位小数
}
}
/********** End **********/