java程序练习题

2018-11-02 15:00

练习:

1.为类设计一个静态方法,实现检查输入字符串是否为”回文”.的功能

Boolean IsPalindrome(String poem)

2. 用随机数对象产生0---1000范围内的不同整数,用以初始化一个M*N的二维数组(M*N<100),然后编程找出二维数

组中的最大数和最小数,并将其交换位置。要求输出原始二维数组及交换后的二维数组。

3. 设计一个类,并为其添加一个带有一个参数的构造函数,同时封装一个方法。当连续调用该方法时,依次产生下列

元素输出

第一次调用输出:5 7 4 8 9 1 第二次调用输出:1 5 7 4 8 9 第三次调用输出:9 1 5 7 4 8 第四次调用输出:8 9 1 5 7 4

第五次调用输出:4 8 9 1 5 7 第六次调用输出:7 4 8 9 1 5 第一次调用输出:5 7 4 8 9 1

收费标准如下:3000米以下为8元,每超过500米增加1.2元,不足500米按500米计算。

4.输入出租车公里数,输出应付的车费数:

5.竹竿长10米,每天截取一半,过多少天后,竹竿长度会小于10厘米。

6.输入一个英文字符串,统计出其中各字符出现的次数,并以下列样式输出:

a=?,b=?,c=?,d=?,e=? f=?,g=?,h=?,i=?,j=?

……

7.写一个实例方法,要求输入一个整数 m ,并输出1---m之间满足下列条件的所有整数: 这个数+1 是一个完全平方数,他的一半+1也是一个完全平方数。 8.设计一个类Complex,用于封装对复数的下列操作:

8.1.一个带参数的构造函数,用于初始化复数成员

8.2.一个不带参数的构造函数,调用代参数的构造函数完成对复数成员的初始化。 8.3. 实现两个复数的加法,减法的静态方法和实例方法。

8.4.以复数的标准形式:x+iy 输出此复数

8.5. 写两个函数,分别获得复数的实部getReal(),getImage()和虚部。

9.写一个静态函数,返回给定整数n的所有因子

10.输入一个十六进制字符串,写一函数,将其转换为对应的十进制数。 11.设计一个只能创建一个唯一实例的类。

12.设计一个类,该类用于表示现代中国的一个典型家庭:father,mother,child.

并为其添加一个无参的构造函数和带三个参数的构造函数以及三个读写属性和 一个get(int member )方法,当member=FATHER时,返回 父亲的姓名;member=MOTHER时,返回母亲的姓名;member=CHILD时,返回

孩子的姓名;FATHER,MOTHER,CHILD 为常数。

13.巴黎时间比北京时间晚7个小时,纽约时间比北京时间晚12个小时,试编写一程序, 根据输入的北京时间输出相应的巴黎和纽约时间。

14.写一函数,实现用某一字符c 去填充字符串的左部,使其长度为恰好为L

PadLeft(String s,int L,char c),同理,实现PadRight((String s,int L,char c) 用字符c 填充串s 的右部,使其长度恰好为L.

15. 写一方法,用于删除字符串中所有空格(不仅仅是两端的空格),并返回没有空格的字

符串。

16.写一函数,用异或运算对一个字符串加密。

17. 写一函数 reverseString(String s) 实现逆转一个字符串的功能

18.巴黎时间比北京时间晚7个小时,纽约时间比北京时间晚12个小时,根据输入的北京

时间,输出相应的巴黎时间和纽约时间。 19.输出下列样式的杨晖三角形

1 1 1 1

1 2 3

1 3

1

1 4 6 4 1

20. 写一个函数,输入一个阿拉伯数字,返回对应的人民币大写汉字字符。

21.写一个静态函数,输入一个字符串,当字符串全为数字字符时,返回true,否则,

返回false. 22.设计一个类Path,该类实现对输入的文件名的各个部分进行解析的功能。即 完成下列函数功能:

String getFullPath()

String getPath() //只有路经p

String getFileName() //仅含文件名,没有路经

String getExtension() //只有扩展名。如果没有扩展名,则返回空串

23.某人卖鸡蛋,第一天卖掉全部鸡蛋的一半又半个,第二天卖掉剩下鸡蛋的一半又半个, 。。。。。。以后每天都卖掉前一天剩下鸡蛋的一半又半个。第18天卖掉最后的2个鸡蛋。 试编程求出此人共有多少个鸡蛋。

24.中国古代韩信点兵问题:3个3个数,最后剩2个,4个4个数,最后剩3个, n个n个数,最后剩n-1个, 假设n=9,问,这支部队至少有多少人? 25. 下面是一个10位的身份证号编码规则: 25.1.长度为10位,下标为N1---N10(从左到右) A 25.2.N1 为英文字母,每个英文字母与一个数字对应 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 10 11 12 13 14 15 16 17 34 18 19 20 21 22 35 23 24 25 26 27 28 29 30 41 42 33 25.3.验证公式:(N1的十位数*1+ N1的个位数*9 + +N2*8+N3*7+N4*6+N5*5+N6*4+N7*3+N8*2+N9*1+N10*1)/10 如果余数为0,则身份证号合法,否则非法

其中N2只能取1 (男)或 2 (女) 25.4.N3---N10为数字;

例如:身份证号 F213454788 为一个合法身份证号

写一个函数IsValid,输入一个10位的身份证号,返回一个整数: 1 有效,0 无效

26.求双精度数d 按照 5 舍 6 入的规则运算后的结果。

27.设计一个Rectangle类,并实现偏移矩形位置函数Offset(int dx,int dy);缩放矩形函数 Inflate(dx,dy),获得矩形大小(Dimension),获得矩形左上角坐标(Point),获得矩形右下角坐标(Point), 获得矩形中心点坐标(Point),获得矩形对角线长度(diagonalLength)

28.定义一个满足下列条件的学生类,并创建其对象,进行测试,此学生拥有姓名,出生日期,血型, 成绩(为一个数组,可存放5门课程的成绩)。并且此类提供接受分数输入的方法,计算并返回总分

即平均分数的方法。

29. 实现一个六舍7入的函数 static public double round(double d,int precision){} 30.写一个函数,输入年份和月份,返回本月的最后一天是几号: int lastDay(int year,int month)

31.请使用StringTokenizer类,将字符串按单词拆分,然后逆序输出。 “2008年 奥运会 中国 金牌冠军”?”金牌冠军 中国 奥运会 2008年” 32.完成下列类:

class Student implements Comparable{ String name;

Int scoreMath,scoreEnglish,scoreChinese; Student(){

//添加初始化代码

}

Student(String name,int scoreMath,int scoreEnglish,int scoreChinese;){ //添加初始化代码 }

//求平均分 float avg(){

}

//比较平均分

public int compareTo(Object obj){ }

//其它必要方法定义

}

当代码完成后,创建Student 型数组,并初始化。然后使用Arrays.sort() 方法对其进行

升序排序。

33.生成0-9000之间的10000个随机整数,并统计各个数出现的次数和频率(用XX。X%表示)。 10==〉XX。%

20==〉XX。% 。。。。。。.用HashMap实现。

34.在命令行输入年份和月份,打印输出月历。 日 一 二 三 四 五 六 1 2 3

35.使用Vector类,制作一个通信录

通信录内容:名字、地址、电话号码、其它等等 通信录功能:添加、删除、查找、输出。 class Constellation{

private Calendar birthday;

public Constellation(String birthday){

36.设计一个星座类,并为其添加一个带参数的构造函数,

}

String getConstellation(){返回 星座 }

int getBornYear(){ }

int getBornMonth(){ }

int getBornDay(){ }

}

出生日期与星座关系如下: 1.20---2.18 水瓶座 2.19----3.20 双鱼座 3.21----4.19. 牧羊座 4.20---5.20 金牛座 5.21-----6.21双子座 6.22.----7.22巨蟹座 7.23----8.22 狮子座 8.23----9.22 处女座

9.23.----10.23天秤座 10.24-----11.22天蝎座 11.23---12.21 射手座 12.22.----1.19 山羊座

37.写一个函数:输入一个字符串(该字符串由若干个特殊字符分隔),返回一个字符串数组。 String[] breakString(String str)

例如:输入:”中国北京 美国华盛顿 英国伦敦\字符串由TAB 键,空格等字符分隔而成。返回: 元素1=中国北京 元素2=美国华盛顿 元素3=英国伦敦

38. 根据下列要求,完成具有下列功能的组件,假设组件封装在类Hex中。

功能要求如下:

38.1.提供下列静态方法:

检查字符串是否为合法的十六进制数(每一个字符由0—9,A—F组成) static private boolean IsHex(string HexString)

将十进制数转换为十六进制字符串 static public String LongToHex(long n) 将十六进制字符串转换为十进制数。

static public long HexToLong(string hexString) public Hex(string HexString) //用十进制数构造一个十六进制字符串 public Hex(long Number)

38.2.提供两个重载的构造函数

38.3.覆盖祖先类的方法toString(),使其输出十六进制字符串

public String ToString() public String HexString

38.4.提供只读属性,获取十六进制字符串 38.5.提供实例方法,将本对象转换为十进制数

//转换为十进制数

public long ToLong() { }

return HexToLong(m_HexString);

38.6.提供类型转换功能,将本对象显示转换(为long)

static public long(Hex hex) static public Hex(long n)

38.7.提供将长整形显示转换本对象(Hex)

39.编写应用程序,求1!+2!+…+10!

40.编写一个函数:输入一个整数n,并将1—n以内的全部素数返回,

41.一个数如果恰好等于它的因子(不包含自身)之和,这个数称为完数,编写应用程序,求1000以内的所有完数,

8000以内的完数。

42.编写应用程序,分别使用while 和 for 循环计算8+88+888+…的前10项之和,前15项之和。 43.编写应用程序,输出满足1+2+3+…+n<8888的最大正整数n. 44. 使用StringBuffer类,构建字符堆栈

public class CharStack{ private StringBuffer stack; public CharStack(){ statck=new StringBuffer();

}

public CharStack(int capacity){ statck=new StringBuffer(capacity); }

public void push(char c){ //将字符压入堆栈…… }

public int pop(){ //将字符弹出堆栈…… }

public char[] list(){ //返回堆栈数组……

}

public String toString(){ //将堆栈中的字符转换为字符串… }

}

45. 写一个函数:输入一个字符串(该字符串由若干个特殊字符分隔),返回一个字符串数组。


java程序练习题.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:宗教信仰自由心得体会

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: