java基础学习练习题


Java学习小窗口


在这里插入图片描述

1.分别定义一个int型变量a和c,double型变量b,分别对这三个变量进行初始化,将变量b强制转化为int型后与a相加并将结果赋值给c,使用包装类的静态方法将变量c分别以二进制和十六进制形式输出。
代码:

public class exam01 {
	public static void main(String[] args) {
		int a=1,c=2;
		double b=1.2345;
		c=(int)b+a;
		//用包装类的静态方法将变量c分别以二进制和十六进制形式输出。
		System.out.println(Integer.toString(c,2));
		System.out.println(Integer.toString(c,16));	
	}
}

在这里插入图片描述
2、补充完善下图所示的代码,能够打印输出其结果(数字部分必须用变量完成)。

在这里插入图片描述
在这里插入图片描述
代码:

public class Exam02 {
	public static void main(String[] args) {
		int a=2,b=57;
		final String c="hello";
		final String d="world";
		System.out.println(c+(a+""+b)+d);
		System.out.println(c+(a+b)+d);
		System.out.println(d+((float)b/(float)a));
		System.out.println(c+(float)(a+b)+d);
		System.out.println(c+Integer.toString((a+b),2)+d);
	}
}

在这里插入图片描述
3、运行下列程序,并分析无论a、b为何值,result值始终为0或1的原因。若要计算数学式子2ab/(a2 + b2)的值,应如何修改代码?
Exp2_1.java
001 public class Exp2_1 {
002 public static void main(String[] args) {
003 int a = 2, b = 3, result;
004 result = 2 * a * b / (a * a + b * b);
005 System.out.println(“result=” + result);
006 }
007 }
修改:
在这里插入图片描述
原因:
因为 其中a,b,result 都为int,/为取商
(a-b)^2= a * a + b * b-2ab>=0
所以 a2+b2>=2ab
当 a=b 时,a2+b2=2ab
result = 2 * a * b / (a * a + b * b); result 的结果为1
当 a!=b 时,a2+b2>2ab
result = 2 * a * b / (a * a + b * b); result的结果为0

代码:

public class Exam03 {
	public static void main(String[] args) {
		int a = 2, b = 3;
		double result;
		result= (double)(2 * a * b) /(double) (a * a + b * b);
		System.out.println("result=" + result);
		}
}

4、不使用循环语句,逆序输出一个7位整数,如8639427输出为7249368。
代码:

public class Exam04 {
	// 不使用循环语句,逆序输出一个7位整数,如8639427输出为7249368。
	public static void main(String[] agrs) {
		int a=8639427;
		int b=a%10;
	    a=a/10;
		System.out.print(b);
		b=a%10;
		a=a/10;
		System.out.print(b);
		b=a%10;
		a=a/10;
		System.out.print(b);
		b=a%10;
		a=a/10;
		System.out.print(b);
		b=a%10;
		a=a/10;
		System.out.print(b);
		b=a%10;
		a=a/10;
		System.out.print(b);
		b=a%10;
		a=a/10;
		System.out.print(b);		
	}
}

在这里插入图片描述
5、对于int型变量a,以最快的速度计算34×a的值。
提示:使用移位运算符、加运算符。

代码:

public class Exam05 {
	// 对于int型变量a,以最快的速度计算34×a的值。
	//提示:使用移位运算符、加运算符。
	public static void main(String[] args) {
		int a=2,b;
		b=(a<<5)+(a<<1);
		System.out.print(b);
	}
}

在这里插入图片描述
6、使用嵌套的条件运算符,求a、b、c中的最大者。
代码:

public class Exam06 {
	//使用嵌套的条件运算符,求a、b、c中的最大者。
	public static void main(String[] args){
		int a=1,b=2,c=3,max;
		max=a>b?a:b>c?b:c;
		System.out.print("a,b,c中最大者为:"+max);
		}
}

在这里插入图片描述

总结:这些是我学习Java过程中的一些练习题,可供大家参考,希望大家能和我一起学习,一起进步。将课堂上的知识加以巩固,让自己得到提升。以上属于个人所学之作,如果有不正确的地方,希望路过的大佬多多指教。谢谢!

  • 7
    点赞
  • 51
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Laymanღ

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值