7.5DAY
=== 做最靠谱的IT培训 , 授专业的技能课程 ===
数据类型和运算符作业
一、 填空题
- Java语言规定标识符由字母、下划线、美元符号和数字组成,并且第一个字符不能是 数字 。
- Java中整型变量有byte、short、int和long四种,不同类型的整数变量在内存中分配的字节数不同,数值范围也不同。对于int型变量,内存分配 4 个字节。
- 在Java中浮点型变量有float和double两种,对于float型变量,内存分配4个字节,尾数可精确到7位有效数字,对于double型变量,内存分配 8 个字节。
- char c=’a’;System.out.println(c+1);运行结果为: 98 。
- _______&&__是短路与运算符,如果左侧表达式的计算结果是false,右侧表达式将不再进行计算。
- 下面的语句是声明一个变量并赋值:boolean b1=5!=8; b1的值是___ture_______。
- 使用位运算符来实现运算效率最高,所以最有效率的方法算出2乘以8等于多少的语句是 2 。
- 基本数据类型的类型转换中,要将double类型的常量3.14159赋给为整数类型变量n的语句是____ ___int n = (int)3.14159;______________。
- 八进制整数012表示十进制的_____10 __,十六进制数0x3C表示十进制的_60____。
- 若a、b为int型变量,并且已分别赋值为5和10,则表达式(a++)+(++b)+a*b+a++的值为 88 。
二、 选择题
1. |
在Java中,以下错误的变量名是( D)。(选择一项) |
|
|
|
|
|
A |
constant |
|
B. |
flag |
|
C. |
a_b |
|
D. |
final |
2. |
以下选项中属于合法的Java标识符的是( CD )。(选择两项) |
|
|
|
|
|
A. |
public |
|
B. |
3num |
|
C. |
name |
|
D. |
_age |
3. |
在Java中,byte数据类型的取值范围是( A )。(选择一项) |
|
|
|
|
|
A |
-128 ~ 127 |
|
B. |
-228 ~128 |
|
C. |
-255 ~ 256 |
|
D. |
-255 ~ 255 |
4. |
下面的代码段中,执行之后i和j的值是( C )。(选择一项) |
|
|
int i=1; int j; j=i++; |
|
|
|
|
|
A |
1,1 |
|
B. |
1,2 |
|
C. |
2,1 |
|
D. |
2,2 |
5. |
下面Java代码的执行结果是(A )。(选择一项) |
|
|
public class Test { public static void main(String args[]) { System.out.println(100 % 3); System.out.println(100%3.0); } } |
|
|
|
|
|
A |
1 1.0 |
|
B. |
1 1 |
|
C. |
1.0 1.0 |
|
D. |
33 33.3 |
6. |
下面的赋值语句中错误的是( A )。(选择一项) |
|
|
|
|
|
A |
float f = 11.1; |
|
B. |
double d = 5.3E12; |
|
C. |
double d = 3.14159; |
|
D. |
double d = 3.14D; |
7. |
在Java中,下面( AB )语句能正确通过编译。(选择两项) |
|
|
|
|
|
A |
System.out.println(1+1); |
|
B. |
char i =2+'2'; System.out.println(i); |
|
C. |
String s="on"+'one'; |
|
D. |
int b=255.0; |
8. |
有以下方法的定义,请选择该方法的返回类型( D )。(选择一项) |
|
|
method(byte x, double y) { return (short)x/y*2; } |
|
|
|
|
|
A |
byte |
|
B. |
short |
|
C. |
int |
|
D. |
double |
9. |
关于以下Java程序中错误行的说明正确的是( B )。(选择一项) |
|
|
public class Test2 { public static void main(String[] args) { short s1=1; //1 s1=s1+1; //2 s1+=1; //3 System.out.println(s1); } } |
|
|
|
|
|
A |
1行错误 |
|
B. |
2行错误 |
|
C. |
3行错误 |
|
D. |
1行,2行,3行都错误 |
三、 判断题
- Java中变量名不区分大小写,number和NuMbEr代表同一个变量。( × )
- 在编译Java源程序时,计算机根本不会去识别各个变量名的具体含义,因此命名规范对编写Java程序而言不是必要的,而且有可能会降低编写Java源程序的效率。( × )
- Java语言中不同数据类型的长度是固定的,不随机器硬件不同而改变。(√ )
- char类型变量可以存储一个Unicode字符,在内存中占2个字节,该字符可以是一个汉字。( √ )
- 运算符||和&&既是逻辑运算符,也是位运算符。根据两侧操作数的类型判断是逻辑运算符还是位运算符。( × )
- ^ 是异或位运算符,运算规则是如果两个操作数相同,结果是0,否则结果是1。(√ )
- 赋值运算符优先级别低于条件运算符,条件运算符优先级别低于算术运算符。( √ )
- 赋值和条件运算符是运算级别最低的两种运算符,都具有自右向左的结合性。( √ )
- 整型常量的默认类型是int类型,浮点常量的默认类型是float类型。( × )
- 00101010 & 00010111语句的执行结果为00111111( ×)
四、 简答题
- Java是一种强类型语言,说明Java的数据类型分类。
* 整数型
* byte 占一个字节 -128到127
* short 占两个字节 -2^15~2^15-1
* int 占四个字节 -2^31~2^31-1
* long 占八个字节 -2^63~2^63-1
* 浮点型(小数型)
* float 占四个字节 -3.403E38~3.403E38 单精度
* double 占八个字节-1.798E308~1.798E308 双精度
* 字符型
* char 占两个字节 0~65535(没有负数) 表示字符
* 布尔型
* boolean
* boolean理论上是占八分之一个字节,因为一个开关就可以决定是true和false 了, 但是java中boolean类型
- i++和++i的异同之处
都是i自增1,i++是先进行运算后自增,后者是自增后参与运算
- 运算符||和|的异同之处
都是有ture则ture,||在左面ture之后,就不会进行右侧的运算,|左右都会判断
- Java中基本数据类型转换的规则
取值范围小的数据类型与取值范围大的数据类型进行运算,会先将小的数据类型提升为大的,再运算:这就被称之为隐式转换
整数型默认int,浮点型默认double,当范围大的数据类型被赋值到范围小的变量上时需要进行强制转换,但是可能会产生数据丢失,使结果出现偏差
五、 编码题
- 输入自己的名字,年龄和性别,分别用不同的变量接收,并将输入的信息做输出。
class DayTwo1{
public static void main(String[] args) {
int i = 23;
String n = "李俊毅";
char c = '男';
System.out.println("your name is :" + n );
System.out.println("your age is :" + i);
System.out.println("your gender is :" + c);
}
}
- 输入圆形半径,求圆形的周长和圆形的面积,并将结果输出。
class DayTwo2 {
public static void main(String[] args) {
double R = 12.5;
double C = 2 * 3.14 * R;
double S = R * R *3.14;
System.out.println("请输入圆的半径:"
+ R);
System.out.println("该圆的半径为: "+R);
System.out.println("该圆的周长为: "+C);
System.out.println("该圆的面积为: "+S);
}
}
- 银行利率表如下表所示,请计算存款10000元,活期1年、活期2年,定期1年,定期2年后的本息合计。
结果如下图所示。(结果四舍五入,不保留小数位。使用Math.round(double d)实现)
- 某个公司采用公用电话传递数据,数据是四位的整数,在传递过程中是加密的,加密规则如下:每位数字都加上5,然后用和除以10的余数代替该数字,再将第一位和第四位交换,第二位和第三位交换。结果如图所示。
六、 可选题
- 网上查询资料,了解如下内容
1) ASCII、ISO8859-1、GBK、UNICODE、ANSI等字符集的特点
2) 常用进制(二进制、八进制、十六进制、十进制)的特点及其转换
3) 源码、反码、补码含义、作用及其转换
4) 源码:就是二进制定点表示法,即最高位为符号位,“0”表示正,“1”表示负,其余位表示数值的大小。
反码: 就是 正数的反码与其原码相同;负数的反码是对其原码逐位取反,但符号位除外
补码:正数的补码与其原码相同;负数的补码是在其反码的末位加1。
个人理解:源码为计算机中实际储存的01数据在计算时需先转换为补码,才能进行计算,反码时转换的中间步骤
- 利用”异或”运算的性质,对几个字符进行加密并输出密文,然后再解密。加密算法是:密钥是字符’8’,明文的每个字符和密钥进行异或运算,得到密文。密钥和密文的每个字符再次进行异或运算,重新得到明文。结果如图所示。
- 进制间的相互转换&图解
任意进制--->十进制的转换
十进制 ----->任意进制的转换
学习小TIPS:
a.注明"掌握"的内容必须熟练掌握;
b.注明"了解"的内容需了解,扩展知识面,应对面试有谈资;
c.记笔记:重点+难点;
d.边学边练:时时敲代码是成为大牛的必练绝学!