|
北京大学JAVA程序设计作业题
1.【第十章】
编写程序,用面向连接的网络通信实现一个远程加法器;客户端向服务器发送两个数;服务器计算两个数的和,返回给客户端。分别写出客户端和服务器端的程序。
2.【第九章】
请写出抽象类InputStream定义的三个主要的读的方法
3.【第九章】同时使用FileInputStream和FileOutputSteam类,实现文件复制功能。
4.【第九章】
标准输入/输出流有哪几个标准流?它们是有哪个类进行管理?
5.【第七章】
线程的创建方式有哪两种?
6.【第六章】
什么是异常类?
7.【资料来源(谋学网www.mouxue.com)】
什么是抽象类?抽象类的修饰符是什么?
8.【资料来源(谋学网www.mouxue.com)】
下列程序的输出结果是什么?
(1)
class Ex17_1 {
static int x = 4, y =5;
static void p(int a, int b) {
int x = 6;
a = x + y + b;
b = x + y + a;
System.out.println("\tx=" + x + " y=" + y + "\ta=" + a + " b=" + b);
}
public static void main(String args[]) {
int u = 2, v = 3;
p(u, v);
System.out.println("\tu=" + u + " v=" + v + "\tx=" +x + " y=" + y);
}
}
(2)
class Ex17_2 {
static int x=3, y =4;
static int p(int a, int b) {
int w = a+b;
a = x + y + b;
b = x+y+w;
System.out.println("w=" + w + " x="+x + " y=" +y + " a=" + a + " b="+ b);
return b;
}
public static void main(String args[]){
int u = 5, v = 6;
u=p(u, v) + v;
System.out.println("u=" + u + " v=" + v + " x=" + x + " y=" +y);
}
}
9.【资料来源(谋学网www.mouxue.com)】
对象和类的基本概念?什么是封装性?封装性的特点?
10.【第二章】
设计一个程序,从文本文件中读入90个百分制的分数,按如下分段:0~29、30~49、50~59、60~69、70~79、80~89、90~100统计,并输出各分数段分数的个数以及各段分数个数占总个数的百分比。文件中的分数之间用逗号隔开如:78,90,92,85,88,87,87,73,75,81,86, 最后一个数字后面也有逗号
11.【第二章】
阅读下面的程序,指出运行结果。
(1)
public class Ex15_1 {
public static void main(String args[]) {
boolean pins[][] = new boolean[4][];
for (int i = 0; i < pins.length; i ++)
pins = new boolean[i + 1];
for (int i = 0; i < pins.length; i++) {
for (int k = 0; k < pins.length; k ++)
System.out.print(pins[k] + ” ”);
System.out.println(””);
}
}
}
(2)
public class Ex15_2 {
public static void main(String args[]) {
int i, n, k, j;
int a[] = new int[9];
a[0] = n = 2;
i = 1;
while(i < a.length) {
n += 1;
j = (int)Math.sqrt(n);
for (k = 2; k <=j; k++)
if (n%k ==0)
break;
if (i == j) {
a = n;
System.out.println(i + “ “ + a);
i ++;
}
}
n=0;
for (k = 0; k <a.length; k ++) {
System.out.print(“a[“ + k +”]=” + a[k] + “\t”);
n++;
if(n<3)
continue;
System.out.println();
n=0;
}
}
}
(3)
class Ex15_3 {
public static void main(String args[]) {
int number = 0;
if (args.length > 0)
number = Integer.parseInt(args[0]);
System.out.println(“the square root of ” + number + “ is “ + Math.sqrt(number));
}
}
12.【第二章】
二分检索,已知数组a中的n个整数,按从小到大顺序排列,检索一个数是否在a中,若在,则指出其下标值,若不在,则返回值-1。例如数组{1,2,7,64,165,271},若输入64,则返回其下标3;若输入70,则返回-1。
13.【第二章】
打印杨辉三角形 如:
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
14.【第二章】
写出完成下列任务的语句或程序段。
(1) 声明并创建具有5个字符型元素的数组;
(2) 声明并创建具有5个整型元素的数据;
15.【第二章】
按字母表顺序和逆序每隔三个字母打印,即打印出:
a e i m q u y z v r n j f b
16.【第二章】
从键盘读入一个5位自然数x,用一个嵌套了两层for循环的程序,用取模操作符(%)来检测小于或等于x的质数,并把它们打印出来。
17.【第二章】
写一个会随机生成10对整型值的程序;对每一对随机值,用if-else语句判断这两个整数值之间的关系(大于、小于、还是等于)。提示:用java.util.Random生成随机数。
如生成的一对随机数为9,12
则应输出这样的一行:a = 9 , b = 12 a < b
18.【第二章】
编写一个程序,输入六个大于10小于99的两位数,输出六个数中的最小数。这六个两位数之间以空格隔开。如输入12 47 23 34 39 28
19.【第二章】
写出程序运行结果(如果程序有错误,指出错误所在位置,及出错原因)
public class Ex07 {
public static void main(String args[]) {
int a=3,b=4;
int c = a*b / ( b % 2 - 2 ) ;
System.out.println("c=" + c);
}
20.
【第二章】
写出程序运行结果。
public class Ex06 {
public static void main(String args[]) {
int a, b, c, d, m =3, n =7;
a = m++ + n++;
System.out.println("a=" + a);
b = m++ + ++n;
System.out.println("b=" + b);
c = ++m + ++n;
System.out.println("c=" + c);
d = m-- + n++;
System.out.println("d=" + d);
}
}
21.【第二章】
单精度浮点数的表示范围是多少?双精度浮点数的表示范围是多少?整型变量的表示范围呢?长整型的表示范围是否少?字符型变量的长度是多少?布尔型的长度是多少?
22.
【第二章】设有变量说明语句:
int a = 15;
boolean b,e;
char c, d;
float x = 7.3f, y, z;
int g,h;
求出下列表达式的值:
(1) b = 5>4||x>25;
(2) e = !(a > x);
(3) c = ‘a’ + 4;
(4) y = x + a % 3 + x/2;
(5) d = ‘\u0030’ + 7;
(6) z = a/4*2-5;
(7) g = 0x75 + 1;
(8) h = 043 + 2
23.【第二章】
叙述标识符的定义。指出下列用户自定义的标识符中哪些是合法的,那些是非法的?为什么?
myName ABc 2xy x$y if$ Else b(3)
‘def’ Chine_bb b3y AbsFloat a.b try
24.【第一章】
创建一个Java程序,输出自己的基本信息:名字、学号以及本学期所修课程名称。
25.【第一章】
鼓励独立完成作业,严惩抄袭
请描述Java语言的特点。
1.简单(Simple) 2.面向对象(Object oriented) 3.解释性(Interpreted) 4.平台独立和可移植(Architecture neutral & Portable) 5.鲁棒和安全(Robust & Secure) 6.多线程(Multithreaded) 7.分布式(Distributed) 8.高性能(High performance) 9.动态(Dynamic)
|
|