




已阅读5页,还剩172页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Java程序设计实用教程(第3版)试题库第1章 Java概述1.1 了解Java1.1 Java采用_技术实现平台无关性。【答】虚拟机1.2 Java具有的三大平台是_。【答】Java ME、JavaSE、Java EE。1.2 Java应用及其运行方式1.3 Java Application应用程序从_方法开始执行。(A)main() (B)start() (C)init() (D)paint()【答】A1.4 Java Application应用程序从_方法开始执行。【答】main()1.5 Java程序可以分为两类,分别是_和_。【答】Application、Applet1.6 Person.java编译后生成的文件是_。【答】Person.class1.7 下列叙述中正确的是_。(A)一个*.java源文件至多只能编译生成一个字节码文件(*.class)。(B)一个*.java源文件中的每个类或接口分别生成一个字节码文件(*.class)。(C)解释器解释执行的是*.java源文件。(D)嵌入超文本文件(*.html)中运行的是*.java源文件。【答】a(猜的)1.8 设一个Java源程序文件中声明多个类如下,那么该文件名是_。public class Helloclass Welcome 【答】Hello.java1.3 JDK1.9 Java默认导入的包是_。(A)java.lang (B)java.util (C)java.awt (D)java.io【答】A1.10 Java有哪些包?各有什么功能?【答】?第2章 Java语言基础2.1 语言成分2.1.1 标识符与关键字2.1 Java语言使用的字符集是_。【答】Unicode2.2 Java的char类型占用_字节,取值范围是_。【答】2,065535或u0000ufffff2.3 下列Java标识符中,哪个不是合法的标识符_。(A)myName(B)mail_2(C)value-1(D)dollar_$ 【答】C2.4 下列Java标识符中,哪个不是合法的标识符_。(A)myName(B)2mail(C)value_1(D)dollar_$ 【答】B2.1.2 基本数据类型1. 数据类型、变量及运算2.5 Java用_表示“真”,用_表示“假”,它们属于_类型。【答】true,false,boolean2.6 Java的数据类型分为_和_。【答】基本数据类型,引用类型2.7 以下叙述中,错误的是_。(A)byte占用1个字节,数据表示范围为-128127。(B)short占用2个字节,数据表示范围为-3276832767。(C)char占用1个字节,数据表示范围为0255。(D)char占用2个字节,数据表示范围为065535。【答】C2.8 Java为什么不支持指针?C+的指针类型存在哪些潜在的错误?没有指针,Java如何实现在C+中用指针实现的功能?例如,通过指针访问数组元素,通过指针使用字符串,方法参数传递地址,方法参数用于输出,方法返回非基本数据类型等。【答】?2. 整数运算的数据类型及数据溢出b=(byte)256; /b结果为0,数据溢出,逻辑错3. 整数位运算4. 浮点数运算2.9 已知x=2.5,a=7,y=4.22,则表达式x+a%3*(int)x%(int)y的值为_。(A)4.5(B)3.5(C)2.5(D)5.5【答】A2.10 设x为float型变量,y为double型变量,a为int型变量,b为long型变量,则表达式x+y*a/x+b/y的值为 _ 类型。【答】double5. 字符类型运算2.11 以下哪个语句编译时不会出警告和错误信息,_。(A)float f=1.3;(B)final int i;(C)byte b=257;(D)char ch=”c”; 【答】B2.1.3 变量与常量2.12 定义一个double型常量表示的声明语句是_。【答】final double PI=3.14159; 2.1.4 运算符与表达式2.13 设int i;,判断i为奇数的表达式是_。【答】i / 2=12.14 设int i;,判断i为偶数的表达式是_。【答】i / 2=02.15 设int n;,求n个位数字的表达式是_。【答】n % 102.16 设int n;,求n十位数字的表达式是_。【答】n%100/10 或 n/10%102.17 设int n;,求n百位数字的表达式是_。【答】n / 1002.18 设int i;,判断i的值是否在09之间的表达式是_。【答】i=0 & i=0 & ch=0 & ch=a & ch=A & ch=a & ch=a & ch=A & ch=0 & ch=a & ch=0 & ch=a & chbc写成表达式是_。【答】ab & bc2.32 表达式100n999有错,正确的是_。【答】100n & n9992.33 表达式100/2=0的值是_。【答】true2.34 表达式98&2的值是_。【答】22.35 表达式100/2的结果类型是_。(A)int (B)float (C)double (D)boolean 【答】A2.36 设double x;,表达式(int)(x+0.5)的含义是_。【答】将x按四舍五入方式强制转换成int整数类型。2.37 设boolean b;,表达式true | b的值是_。【答】true【试2.7】 运算符与表达式。(1)算术运算符,整除与取余(2)关系运算(3)位运算public class Arithmetic public static void main(String args) /(1)算术运算符,整除与取余 System.out.println(7/2 = +(7/2); / 7/2 = 3 System.out.println(7.0/2 = +(7.0/2); /7.0/2 = 3.5 System.out.println(7%2 = +(7%2); /7%2 = 1 System.out.println(7.0%2 = +(7.0%2); /7.0%2 = 1.0 System.out.println(-7%2 = +(-7%2); /-7%2 = -1 System.out.println(7%-2 = +(7%-2); /7%-2 = 1 /思考题2-1 int month=12; System.out.println(month+月的下一月是+(month%12+1)+月); /12月的下一月是1月 month=1; System.out.println(month+月的上一月是+(month=1 ? 12 : (month-1)+月); /1月的上一月是12月 /(2) 关系运算符,整数与浮点数可进行关系运算 System.out.println(1.0=1, +(1.0=1); /1.0=1, true System.out.println(1.0=1-0,+(1.0=1-0); /1.0=1-0,true /(3)位运算,整数和字符可进行位运算 System.out.println(4 = +(4)+, +Integer.toBinaryString(4)+ = + Integer.toBinaryString(4); /4 = -5, 100 = 11111111111111111111111111111011 System.out.println(6 | 2 = + (6|2); /6 | 2 = 6 System.out.println(4 & 2 = + (4&2); /4 & 2 = 0 System.out.println(100 & 2 = + (100&2); /100 & 2 = 0 System.out.println(6 2 = + (62); /6 2 = 4 System.out.println(1 2 = + (12); /1 2 = +(-82)+, +Integer.toBinaryString(-8)+ 2 = + Integer.toBinaryString(-82); /-82 = -2, 11111111111111111111111111111000 2 = 11111111111111111111111111111110 System.out.println(-130 = +(-130)+, +Integer.toBinaryString(-1)+ 30 = + Integer.toBinaryString(-130); /-130 = 3, 11111111111111111111111111111111 30 = 11/ System.out.println(100 & 2.0 = + (100&2.0); /语法错,浮点数不能参加位运算 (4)逻辑运算public class Logic public static void main(String args) /(4)逻辑运算 System.out.println(!true = +(!true); /逻辑非,!true = false System.out.println(!false = +(!false); /!false = true System.out.println(true | false = +(true | false); /逻辑或,true | false = true System.out.println(true & false = +(true & false); /逻辑与,true & false = false System.out.println(true false = +(true false); /逻辑异或,true false = true boolean b; /b没有初值,不能输出 System.out.println(true | b = +(true | b); /条件或,短路运算,true | b =true System.out.println(false & b= +(false & b); /条件与,短路运算,false & b=false/ System.out.println(truefalse = +(truefalse); /语法错,没有运算符 int i=-1,j; System.out.println(i=0 & i=0 & i=0 & i=9,false char ch=a; System.out.println(ch=A | ch=a,+(ch=A | ch=a); /判断字符ch是否为字母A,忽略大小写,ch=A | ch=a,true /(5)赋值运算,赋值运算的结果类型/ byte b=128; /编译错,数据类型范围越界 System.out.println(i=j=10,+(i=j=10); /i=j=10,10 System.out.println(ch=x,+(ch=x); /ch=x,x int x=0,y=4,z=3; /逗号运算符 System.out.println(x=+x+,y=+y+,z=+z); /x=0,y=4,z=3 System.out.println(xy=+(xy)+,yz=+(yz); /比较运算结果是布尔值 /xy=true,yz=false x=y=z=1; /连续赋值 System.out.println(x=+x+,y=+y+,z=+z); / x=1,y=1,z=1 System.out.println(+x & +y & +z); /位运算 2 System.out.println(x=+x+,y=+y+,z=+z); /x=2,y=2,z=2 /(6) 强制类型转换符 System.out.println(int)(98.4+0.5)=+(int)(98.2+0.5); /(int)(98.4+0.5)=98 System.out.println(int)(98.5+0.5)=+(int)(98.5+0.5); /(int)(98.5+0.5)=99 3. 运算符的结合性 5. 运算的类型兼容原则 6. 运算的正确性判断public class Operation public static void main(String args) /3. 运算符的结合性 int i=0,j,m,n; j=i+; System.out.println(j=+j+,i=+i); /先赋值后增,j=0,i=1 j=+i; System.out.println(j=+j+,i=+i); /先增后赋值,j=2,i=2 m=n=2; System.out.println(m=+m+,n=+n); /连续赋值,m=2,n=2 m+=n+=2; System.out.println(m=+m+,n=+n); / m=6,n=4 /5. 运算的类型兼容原则(1) 类型相容 byte b=127; System.out.println(b+1); /输出128,运算结果是int类型 b+; System.out.println(b= +b); /输出b= -128,数据溢出 /字符是数值类型,可与整数或浮点数进行算术运算,运算结果是int或浮点数类型 System.out.println(a+1 = +(a+1); /a+1 = 98,运算结果是int类型 System.out.println(a-1 = +(a-1.0); /a-1 = 96.0,运算结果是浮点数 System.out.println(a*2 = +(a*2); /a*2 = 194 System.out.println(a/2 = +(a/2); /a/2 = 48 System.out.println(a%2 = +(a%2); /a%2 = 1 System.out.println(char)(a+1) = +(char)(a+1); /(char)(a+1) = b System.out.println(a+b = +(a+b); /a+b = 195 char ch=a;/u0000; /以下字符变量可自增、自减 System.out.println(+(ch+)+=+ch+); /a+=b,先输出再自增减 System.out.println(-+ch+=+(-ch)+); /-b=a,先自增减再输出/ ch=-1; /语法错 ch=27721; /char的数据范围是065535 System.out.println(char)+(ch+0)+=+ch+); /(char)27721=汉 /字符可与整数或浮点数进行关系运算 System.out.println(a = 97 +(a = 97); /a = 97 true System.out.println(a = 97.0 +(a = 97.0); /a = 97.0 true /字符参加位运算,结果是int类型 System.out.println(a&2 = +(a&2); /a&2 = 0 System.out.println(a|2 = +(a|2); /a|2 = 99 System.out.println(a = +(a); /a = -98 System.out.println(a2 = +(a2); /a2 = +(a2); /a2 = 24 System.out.println(a2 = +(a2); /a2 = 24 for (ch=u0021; ch=u007f; ch+) /输出ASCII码可打印字符表 System.out.print(ch+ ); if (ch%32=0) System.out.println(); /以下语句有错误,布尔与整数不能进行算术运算、关系运算,整数不能进行逻辑运算/ System.out.println(true+1 +(true+1); /语法错,布尔与整数不能进行算术运算/ System.out.println(true = 1 +(true = 1); /语法错,布尔与整数不能进行关系运算/ System.out.println(abc=+(ab0) b+; System.out.println(nb= +b); /b= -128 System.out.println(128+ +Integer.toBinaryString(128); /128 10000000 b=(byte)128; /b= -128 System.out.println(b= +b); /b= -128 System.out.println(256+ +Integer.toBinaryString(256); /256 100000000 b=(byte)256; /b=0 System.out.println(b=+b); / b=0 b=64;/ b=b*2; /编译错/ b=64*2; /编译错 i=b*2; System.out.println(1234567890+1234567890= +(1234567890+1234567890); /1234567890+1234567890= -1825831516 System.out.println(long)(1234567890+1234567890)= +(long)(1234567890+1234567890); /(long)(1234567890+1234567890)= -1825831516 System.out.println(long)1234567890+(long)1234567890)= +(long)1234567890+ (long)1234567890); /(long)1234567890+(long)1234567890)= 2469135780 System.out.println(1234567890+1234567890-1234567890); /输出1234567890,运算中间数据溢出 float p=0.0f; /p=0警告; p=1.0错; double q=0.0; p=i; /赋值相容 System.out.println(0.0=0? +(0.0=0); /0.0=0? true System.out.println(0.1-0.1)=0? +(0.1-0.1)=0); /(0.1-0.1)=0? true System.out.println(7.0/2=3.5? +(7.0/2=3.5); /7.0/2=3.5? true System.out.println(0.1+0.2)+0.3= +(0.1+0.2)+0.3); /0.6000000000000001 System.out.println(0.1+(0.2+0.3)= +(0.1+(0.2+0.3); /0.6 System.out.println(0.1+0.2)+0.3=0.1+(0.2+0.3)? +(0.1+0.2)+0.3=0.1+(0.2+0.3); /(0.1+0.2)+0.3=0.1+(0.2+0.3)? false /2.2.2 顺序结构语句 1. 赋值语句/Java与C不同之处,以下编译错, /i+1; /编译错,没有赋值功能的表达式不能作为语句 /x=1,y=2,z=3; /编译错,逗号仅用于分隔表达式,不是运算符/ System.out.println(+(x=1,y=2); /编译错,包含逗号的表达式没有运算结果 程序运行结果如下:! # $ % & ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; ? A B C D E F G H I J K L M N O P Q R S T U V W X Y Z _ a b c d e f g h i j k l m n o p q r s t u v w x y z | (0.1+0.2)+0.3= 0.60000000000000010.1+(0.2+0.3)= 0.62.2 流程控制语句2.3 数组2.3.1 一维数组2.38 数组声明后必须使用_运算符为其分配空间,数组下标从_开始,数组长度用_表示,运行时如果下标越界,系统将_。【答】new、0、length、抛出异常2.39 以下数组声明中,_不正确。(A)int a=new int20;(B)int a=new int20;(C)char c20;(D)char c;【答】C2.40 设int a=new int10,b; 执行语句arraycopy(a,0,b,0,10);后,a0值为_。【答】02.3.2 二维数组2.41 以下声明二维数组正确的是_。(A)int mat = 1,2,3,4,5,6 ; (B)int mat23 = 1,2,3,4,5,6 ;(C)int mat23 = 1,2,3,4,5,6 ; (D)int mat = 1,2,3, 4,5,6 ;【答】D2.42 以下数组声明错误的是_。(A)int x=new int 4; (B)int x=new int 43;(C)int x=0,0,0; (D)int x=new int 3;【答】D2.43 设int mat=new int23,则mat.length的值是_,mat0.length的值是_。【答】2,32.44 设int mat=new int56,则第i行元素个数用_表示。【答】mati.length2.45 画出下列程序段表示的mat存储结构示意图,写出输出数组中所有元素的语句及输出结果。int mat=new int 44;for (int i=0; imat.lenght; i+) matii=i+1;【答】for (int i=0; imat.lenght; i+) for (int j=0; jmati.lenght; j+) Syatem.out.print(matij+” ”); Syatem.out.println();1 0 0 00 2 0 00 0 3 00 0 0 42.46 画出下列程序段表示的mat存储结构示意图,并写出其中数据。int n=5, k=1;int mat =new int n;for (int i=0; in; i+) mati=new inti+1; for (int j=0; j=i; j+) matij = k+;【答】下三角形二维数组存储结构及初值如图2.1所示。图2.9 下三角形二维数组的存储结构2.4 静态方法2.4.1 方法声明与调用4. 在声明方法时,若要使方法改变实际参数的值,形式参数可以声明_A_。(A)基本数据类型的引用(B)对象(C)基本数据类型的指针(D)不能改变实际参数的值2.4.2 参数传递1. 一维数组作为方法的参数或返回值(1) 一维整数数组的最大值等【试2.10】 求数组元素最大值或最小值,查找数组元素。【答】public class IntArray public static int max(int value) /返回数组元素最大值 int maxvalue = value0; for (int i=1; imaxvalue) maxvalue = valuei; return maxvalue; /返回变量值 (2) 递归方法2.5 字符串1. 字符串概念2.47 表达式a+1的运算结果是_,表达式10+的运算结果是_。【答】b;102.48 下列语句中正确的_。(A)String s=a; (B)String s=; (C)String s; s0=a; (D)String s=a+;【答】D2.49 设String s; char a=new char10;下列赋值正确的是_。(A)s0=a; (B)a0=a; (C)a0=; (D)a0=ab;【答】B2.50 设byte b=127;,表达式b+1=+(+b)的运算结果是_。【答】127+1=-128解释byte整数溢出,字符串连接运算。当byte b=127(01111111)时,+b,byte整数溢出,b=-128(10000000),因此,表达式各项进行字符串连接运算结果是127+1=-128,数学意义上等式不成立,数据溢出。2.51 设String s=;求s长度的函数调用是_。【答】s.length()2.52 设char s; 用_表示s的长度。【答】s.length2.53 设字符串str=string tes
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 教师招聘之《小学教师招聘》押题模拟及完整答案详解【考点梳理】
- 白莲河水库加固工程施工组织设计方案
- 教师招聘之《小学教师招聘》强化训练题型汇编及答案详解(典优)
- 智能楼宇与设施管理创新创业项目商业计划书
- 教师招聘之《小学教师招聘》考前冲刺练习题含答案详解(能力提升)
- 2025内蒙古鄂尔多斯东胜区第五小学分校塔拉壕小学招聘1人笔试备考附答案详解(突破训练)
- 2025年教师招聘之《幼儿教师招聘》练习题库包及参考答案详解(新)
- 2025年教师招聘之《幼儿教师招聘》模拟试题及一套答案详解
- 教师招聘之《小学教师招聘》强化训练题型汇编含完整答案详解【全优】
- 考点攻克公务员考试《常识》同步练习练习题(含答案详解)
- 抵押合同变更协议书范本
- 2025年舞蹈培训学校工作计划及方案范文
- 田径百米教学课件
- GB/T 45953-2025供应链安全管理体系规范
- 污水处理设施运行维护手册与规范
- AIGC艺术设计 课件 第8章 AIGC艺术设计的思考与展望
- 物业财务基础知识培训课件
- 上饶市“振兴杯”职业技能竞赛技术规程-汽车技术
- 团体心理辅导技术
- 厂房酒店改造项目方案(3篇)
- 剧院情景面试题目及答案
评论
0/150
提交评论