0704作业

数据类型和运算符作业

 

一、 填空题

  1. Java语言规定标识符由字母、下划线、美元符号和数字组成,并且第一个字符不能是 数字              
  2. Java中整型变量有byteshortintlong四种,不同类型的整数变量在内存中分配的字节数不同,数值范围也不同。对于int型变量,内存分配      4  个字节。
  3. Java中浮点型变量有floatdouble两种,对于float型变量,内存分配4个字节,尾数可精确到7位有效数字,对于double型变量,内存分配   8  个字节。
  4. char c=’a’;System.out.println(c+1);运行结果为:     98      
  5. _____&&____是短路与运算符,如果左侧表达式的计算结果是false,右侧表达式将不再进行计算。
  6. 下面的语句是声明一个变量并赋值:boolean b1=5!=8 b1的值是___true_______ 
  7. 使用位运算符来实现运算效率最高,所以最有效率的方法算出2乘以8等于多少的语句是       2<<3   
  8. 基本数据类型的类型转换中,要将double类型的常量3.14159赋给为整数类型变量n的语句是_int n=(int)3.14159;
  9. 八进制整数012表示十进制的____10___,十六进制数0x3C表示十进制的____60___
  10. abint型变量,并且已分别赋值为510,则表达式(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.

下面的代码段中,执行之后ij的值是( 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行都错误

 

三、 判断题

  1. Java中变量名不区分大小写,numberNuMbEr代表同一个变量。( ×   
  2. 在编译Java源程序时,计算机根本不会去识别各个变量名的具体含义,因此命名规范对编写Java程序而言不是必要的,而且有可能会降低编写Java源程序的效率。(  ×  
  3. Java语言中不同数据类型的长度是固定的,不随机器硬件不同而改变。(  √  
  4. char类型变量可以存储一个Unicode字符,在内存中占2个字节,该字符可以是一个汉字。(  √  
  5. 运算符||&&既是逻辑运算符,也是位运算符。根据两侧操作数的类型判断是逻辑运算符还是位运算符。(  ×  
  6. ^ 是异或位运算符,运算规则是如果两个操作数相同,结果是0,否则结果是1(√ )
  7. 赋值运算符优先级别低于条件运算符,条件运算符优先级别低于算术运算符。( √ )
  8. 赋值和条件运算符是运算级别最低的两种运算符,都具有自右向左的结合性。(  √  
  9. 整型常量的默认类型是int类型,浮点常量的默认类型是float类型。(  ×  
  10. 00101010 & 00010111语句的执行结果为00111111(  ×  

 

四、 简答题

  1. Java是一种强类型语言,说明Java的数据类型分类。
  2. i++++i的异同之处
  3. 运算符|||的异同之处
  4. Java中基本数据类型转换的规则
  5. 数据类型分类:    基本数据类型  引用数据类型 

基本数据类型:整数型,小数型,字符型,布尔型

2.

单独使用:

放在操作数的前面和后面效果一样。(这种用法是我们比较常见的)
参与运算使用:

放在操作数的后面,先取值参与运算,再自增或者自减。
放在操作数的前面,先自增或者自减,然后再将结果参与运算。

3.

最终结果一样。
具有短路效果。左边是true,右边不执行。

4.

1)布尔型和其它基本数据类型之间不能相互转换; 
2)byte型可以转换为short、int、、long、float和double; 
3)short可转换为int、long、float和double; 
4)char可转换为int、long、float和double; 
5)int可转换为long、float和double; 
6)long可转换为float和double; 
7)float可转换为double; 

 

五、 编码题

  1. 输入自己的名字,年龄和性别,分别用不同的变量接收,并将输入的信息做输出。

 

public class TestPerson {

public static void main(String[] args) {

System.out.println("Please input your name here:");

System.out.println("小明");

System.out.println("Please input your age here:");

System.out.println("23");

System.out.println("Please input your gender here:");

System.out.println("");

System.out.println("The computer recorded that :");

System.out.println("Your name is:小明");

System.out.println("Your age is:23");

System.out.println("Your gender is:");

}

}

 

 

 

 

 

  1. 输入圆形半径,求圆形的周长和圆形的面积,并将结果输出。

 

 

public class TestCircle {

public static void main(String[] args) {

double b=12.5d;

double PI=3.14d;

double c=2*3.14*12.5;

double s=3.14*12.5*12.5;

System.out.println("请输入圆的半径:");

System.out.println(b);

System.out.println("该圆的半径:R="+b);

System.out.println("该圆的周长:C="+ 2 + "*" + PI+ "*" +b+ "=" +c);

System.out.println("该圆的面积:S=" + PI+ "*" +b+ "*" +b+ "=" +s);

}

}

 

  1. 银行利率表如下表所示,请计算存款10000元,活期1年、活期2年,定期1年,定期2年后的本息合计。

 

结果如下图所示。(结果四舍五入,不保留小数位。使用Math.round(double d)实现)

 

 

public class TestDeposit {

public static void main(String[] args) {

int i=10000;

System.out.println("本金:"+i);

double d1=i*(1+0.35/100);

System.out.println("活期1年本金总计:"+Math.round(d1));

double d2=i*(1+1.50/100);

System.out.println("定期1年本金总计:"+Math.round(d2));

double d3=i*(1+0.35/100*2);

System.out.println("活期2年本金总计:"+Math.round(d3));

double d4=i*(1+2.10/100*2);

System.out.println("定期2年本金总计:"+Math.round(d4));

}

}

  1. 某个公司采用公用电话传递数据,数据是四位的整数,在传递过程中是加密的,加密规则如下:每位数字都加上5,然后用和除以10的余数代替该数字,再将第一位和第四位交换,第二位和第三位交换。结果如图所示。

 

 

 

六、 可选题

 

  1. 网上查询资料,了解如下内容

1) ASCIIISO8859-1GBKUNICODEANSI等字符集的特点

2) 常用进制(二进制、八进制、十六进制、十进制)的特点及其转换

3) 源码、反码、补码含义、作用及其转换

 

 

  1. 利用”异或”运算的性质,对几个字符进行加密并输出密文,然后再解密。加密算法是:密钥是字符’8’,明文的每个字符和密钥进行异或运算,得到密文。密钥和密文的每个字符再次进行异或运算,重新得到明文。结果如图所示。

 

 

  1. 进制间的相互转换&图解

    任意进制--->十进制的转换

十进制 ----->任意进制的转换

posted on 2018-07-05 13:02  三冬暖  阅读(948)  评论(0编辑  收藏  举报