「java基础小项目练习题」java项目题目
本篇文章给大家谈谈java基础小项目练习题,以及java项目题目对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
- 1、求大量JAVA习题!!!急!!!(不是编程题)
- 2、java练习题
- 3、明天要考java,有几个知识点不理解,求大佬可以把以下的题目代码发一下,能做几个都好,只要注释全就行~
- 4、java编程基础练习题
- 5、求Java基础,练习题。
求大量JAVA习题!!!急!!!(不是编程题)
注意:还不是完整的文档,太长了不能全帖完。要的话找我!^_^
《Java程序设计》练习题
一、判断题
1、 Java语言采用面向对象的思想编程,具有跨平台、分布式、多线程等优点。 ( )
2、 一个Java源程序可有多个类,但只仅有一个public类,而且程序名与public类名相同。 ( )
3、方法中的形参可以和方法所属类的属性同名。 ( )
4、接口无构造器,不能有实例,也不能定义常量。 ( )
5、利用File对象可以判断一个文件或目录是否存在。 ( )
6、JFrame,JPanel,JApplet和JButton四种组件都属于容器组件。 ( )
7、BorderLayout是面板的缺省布局管理器。 ( )
8、BorderLayout最多可以使用5个组件。 ( )
9、一个面板(JPanel)不能被加入另一个面板(JPanel)中。 ( )
10、菜单需要一个JMenuBar对象,以使他们能被添加到JFrame。 ( )
11、线程可以用yield使同优先级的线程运行。 ( )
12、System.in是标准输入流,能用read方法读取键盘的输入。 ( )
13、数据流就是数据通信通道,指在计算机的输入输出之间运动的数据序列。( )
二、填空题
1、设x,y,z的值分别为ture、false和false,试计算下列逻辑表达式的值:
(1) x y||!zture (2) !x||!y!z
(3) (!x!y)||(!y!z) (4) xy||true!z
2、求下面表达式的值:
(1) 已知x=2、y=6、z=5.0,求x+(int)y/2*z%4
(2) 已知x=123,求x/100+x%100/10+x%10
(3) 已知x=160、y=2.8、z=5,求(byte)x +(int)y+(float)z;
(4) 设 int x=17,y=5; 执行语句 x%=x++/--y 后x的值为 。
(5) 设 int a=7,b=6,c=5;,表达式 (a+b)(c*c)b==c||cb 的值为 。
(6) 设 int a=3,b=5,c=7;,表达式ac||cb!=0c==b+a 的值为 。
3、下列表达式中n和x被赋值为多少?
int n=0;
int x=1;
n=x++ + x++; //这里n= , x=
n=n++ - x--; //这里n= , x=
n=x-- + -x++; //这里n= , x=
n=++x + x++; //这里n= , x=
4、使用 方法为组件设置布局管理器,JFrame的缺省布局管理器是 ,内容面板的缺省布局管理器是 。
5、写出4个常见的异常例子: 、 、 和 。重新抛出一个异常用 语句。
6、线程通过 方法可以休眠一段时间,然后恢复运行,当 时,线程进入死亡状态。
7、编写一个线程可以用 和 来实现。
8、创建文件(c:\test.txt)对象的语句是 ,DataInputStream对象提供 方法可以按行读取文件内容。
9、Container 的________方法可以将_______组件加入容器。
10、在执行Java线程的程序中,程序通过调用_______方法启动线程,随后又调用________方法。
11、使用 方法为组件设置布局管理器,JFrame的缺省布局管理器是 ,内容面板的缺省布局管理器是 。
12、Java.swing.JFrame.getContentPane()的返回类型是 。
13、数据越界抛出的异常类是 ,整数除零抛出的异常类是 ,算术溢出抛出的异常类是 。
三、选择题
1、 下面哪些是不合法的变量名称? ( )
A) 2D B) True C) _name D) T1 E) while-ture
2、下列变量定义不正确的是: ( )
A) boolean status=false; B) float d = 45.6;
C) char c = “a”; D) int k = 1+’1’; E) float f=1/4;
3、下列数组的定义不合法的是: ( )
A) char c[][]=new char[2][3];
B) char c[][]=new char[6][];
C) char [][]c=new char[3][3];
D) char [][]c=new char[][4];
E) int []a[] = new int[10][10];
4、对于下列代码:
public class Example{
String str=new String("hello");
char ch[]={'d','b','c'};
public static void main(String args[]){
Example ex=new Example();
ex.change(ex.str,ex.ch);
System.out.println(ex.str+"and"+ex.ch[0]);
}
public void change(String str,char ch[]){
str="world";ch[0]= 'a';
}
}
输出结果是: ( )
A) hello and d B) hello and a
C) world and d D) world and a
5、下列说法哪个是正确的? ( )
A) 子类不能定义和父类同名同参数的方法
B) 子类只能继承父类的方法,而不能重载
C) 重载就是一个类中有多个同名但有不同形参和方法体的方法
D) 子类只能覆盖父类的方法,而不能重载
6、如果一个程序段中有多个catch,则程序会按如下哪种情况执行? ( )
A) 找到合适的例外类型后继续执行后面的catch
B) 找到每个符合条件的catch都执行一次
C) 找到合适的例外类型后就不再执行后面的catch
D) 对每个catch都执行一次
7、以下哪一项不是File类的功能: ( )
A) 创建文件
B) 创建目录
C) 删除文件
D) 拷贝文件
8、下列说法哪个是正确的? ( )
A) BorderLayout是面板的缺省布局管理器
B) 当鼠标指针位于一个GUI组件的边上时,发生一个MouseOver事件
C) 一个面板(Jpanel) 不能被加入到另一个面板(Jpanel)中
D) 在BorderLayout中,添加到NORTH区的两个按钮将并排显示。
9、在java程序中,下列关于线程的说法错误的是: ( )
A) run方法是运行线程的主体
B) 多个进程运行时执行顺序是按顺序执行的
C) 如果线程死亡,它便不能运行
D) 在java中,高优先级的可运行线程会抢占低优先级线程
10、关于JDBC访问数据库的说法错误的是: ( )
A) 建立数据库连接时,必须加载驱动程序,可采用Class.forName()实现
B) 用于建立与某个数据源的连接可采用DriverManager类的getConnection方法
C) 建立数据库连接时,必须要进行异常处理
D) JDBC中查询语句的执行方法必须采用Statement类实现
四、程序阅读题
1、阅读下面的程序,程序保存为Test.java:
1) public class Test
2) {
3) public static void main(String[] args)
4) {
5) System.out.println(args[2]);
6) }
7) }
以上程序经编译后用java Test 1 2 3 运行得到的输出结果是什么?
2、阅读下面的程序:
① public class Test{
② public static void main(String[] a){
③ int i = Integer.parseInt(a[0]);
④ switch (i) {
⑤ case 1:System.out.println("Frist season");break;
⑥ case 2:System.out.println("Second season");
⑦ case 3:System.out.println("3th season");break;
⑧ case 4:System.out.println("Last season");
⑨ }
⑩ }
⑪ }
上面的程序编译是否成功?如果编译出错,指出哪行出错,并说明理由;如果编译正确,用java Test 2 运行得到的输出结果是什么?
3、阅读下面的程序:
① public class Test{
② public static void main(String[ ] args) {
③ int x,y=2,i=0,j=0;
④ if(args.length2) System.exit(-1);
⑤ x = Integer.parseInt(args[1]);
⑥ switch(x){
⑦ case 1:switch(y){
⑧ case 1:i++;break;
⑨ case 2:j++;break;
⑩ default:i++;j++;
⑪ }
⑫ case 2:i++;j++;break;
⑬ default:i++;j++;
⑭ }
⑮ System.out.println("i="+i);
⑯ System.out.println("j="+j);
⑰ }
⑱ }
上面的程序编译是否成功?如果编译出错,指出哪行出错,并说明理由;如果编译正确,用java Test 1 2 3 运行得到的运行结果是什么?
4、阅读下面的程序,程序保存为Test.java:
1) public class Test
2) {
3) short mValue;
4) public static void main(String[] args)
5) {
6) int a = 32;
7) int b = 56;
8) Test os = new Test(a+b);
9) os.Show( );
10) }
11) protected Test(short aValue) { mValue = aValue; }
12) public void Show( ) { System.out.println(mValue); }
13) }
上面的程序编译是否成功?如果编译出错,指出哪行出错,并说明理由;如果编译正确,运行结果是什么?
5、阅读下面的程序:
class test
{
public static void main(String[] args)
{
int i = 1;
int All = 0;
for (;i=10;i++)
{
if (i%6==0) break;
if(i%2==0) {i=i+2;continue;}
All = All + i;
}
System.out.println(All);
}
}
上面的程序编译是否成功?如果编译出错,指出哪行出错,并说明理由;如果编译正确,运行结果是什么?
6、阅读下面的程序,程序保存为Test.java:
1) public class Test
2) {
3) public static void main(String[] args)
4) {
5) int i = 100;
6) int j = 0;
7) boolean b = true;
8) while (b)
9) {
10) if (b||(i50)) b = false;
11) else b = true;
12) j=j+1;
13) i=i-1;
14) }
15) System.out.println(j);
16) }
17) }
上面的程序经编译,运行后输出的结果是什么?
7、阅读下面的程序:
1) public class test
2) {
3) public static void main(String argv[])
4) {
5) Bird b = new Bird();
6) b.Fly(3);
7) }
8) }
9) class Bird
10) {
11) static int Type = 2;
12) private void Fly(int an_Type)
13) {
14) Type = an_Type;
15) System.out.println("Flying..."+Type);
16) }
17) }
上面的程序编译是否成功?如果编译出错,指出哪行出错,并说明理由;如果编译正确,运行结果是什么?
8、阅读下面的程序:
1) abstract class Base{
2) abstract public void myfunc();
3) public void another(){
4) System.out.println("Another method");
5) }
6) }
7) public class Abs extends Base{
8) public static void main(String argv[]){
9) Base b = new Abs();
10) b.another();
11) }
12) public void myfunc(){
13) System.out.println("My Func");
14) }
15) public void another(){
16) myfunc();
17) }
18) }
以上程序经编译后,运行结果是什么?
9、阅读下面的程序:
1) class Super{
2) public int i=0;
3) public Super(){
4) i=1;
5) }
6) }
7) public class Sub extends Super{
8) public Sub(){
9) i=2;
10) }
11) public static void main(String args[]){
12) Sub s=new Sub();
13) System.out.println(s.i);
14) }
15) }
上面的程序经编译后,运行结果是什么?
10、阅读下面的程序,程序保存为Test.java:
1) public class Test {
2) public static void main(String[ ] args) {
3) int index=0;
4) while (index=100) {
5) index+=10;
6) if (index==40)
7) break;
8) System.out.println("The index is "+index);
9) }
10) }
11) }
上面的程序经编译,运行后输出的结果是什么?
五、问答题
1、 设int类型变量x和y分别初始化为3和100,下列语句的循环体共执行几次?执行完下列语句后x和y的值分别是多少?
(1) while(x=y) x=2*x;
(2) while(y/x5) if(y-x25) x=x+1; else y=y/x;
(3) do{x=2*x;} while(xy);
(4) do{x=y/x;y=y-x;}while(x=y);
(5) do{y=y/x-1; if(y=x) y=x;} while(y=1);
2、简述对象、类的概念。
3、简述封装、继承性和多态性的概念。
4、根据以下的设计要求编写java源代码。
类名: Circle
实例数据(均为private):
radius(double) //圆的半径
方法:
构造方法(没有参数,设置radius的值为10.0)
setRadius(有一个double参数,将radius的值设为这个新值),
getRadius (没有参数,返回radius的值)
sameSize(有一个参数,是另一个Circle对象的引用,如果两个Circle对象的radius的差小于0.001,则返回true)
5、下面的代码使用上题的Circle类,请回答下面的问题:
public class CircleTester {
public static void main(String[] args) {
Circle c1,c2,c3;
c1 = new Circle();
c2 = new Circle();
System.out.println(“are same is: “+c1.sameSize(c2));
c2.setRadius(20.0);
compare.reset();
System.out.println(“are same is: “+c1.sameSize(c2));
}
}
问题:
(1) 共创建了几个Circle对象?
(2) 程序运行的结果是什么?
6、假设已有一个ArrayMethods 类,包含以下的方法:
public static void replace(double[] a, int p, double v)
将数组a中下标为p的元素的值替换为v.
public static void fill(double[] a, int p, double v)
将数组a中的前p个元素用value值填充(即将数组a的前p个元素的值,设成v),如果数组的长度小于p,则全部元素都设成v
public static void display(double[] a)
在屏幕上显示数组a的内容
现在假设你在main()方法中已经声明了如下变量:
double[] array1={4.5, 6.0, 0.1, 2.2};
double[] array2;
double num1;
int pos=3;
要求对下面的3组语句,先回答是否合法(即没有编译错误),如果是合法的,请描述程序运行的效果,如果不合法,请说明理由.
1) num1 = array1[2];
ArrayMethods.replace(array1, pos, num1);
ArrayMethods.display(array1);
2) num1 = array1[0];
ArrayMethods.fill(array1, pos, num1);
ArrayMethods.display(array1);
3) num1 = array1[1];
array2=new double[num1];
ArrayMethods.display(array2);
六、编程题
1、分别利用for、while、do~while编写计算正整数n1到n2的累加和。
2、编写一个编程,给定一个t的值(t的值也可通过命令行输入),按下式计算y值并输出,要求分别写作if语句和switch语句。
t2-1 0≤t<1
t3-2•t-2 1≤t<3
y= t2-t•sint 3≤t<5
t+1 5≤t<7
t-1 其它
3、设计一个类TestArraySum,定义一个含有10个元素的int类型数组a,10个数组元素的值是11~20,再定义一个方法arraySum(int[] a),返回数组所有元素的和,最后用main方法实现在屏幕上输出数组a所有元素的和。
4、编写一个java程序Suansu.java,定义两个整型变量a和b,使用构造函数初始化a为10,b为5,并定义求出a与b的和(方法名为AddAB)、差(方法名为SubAB)、积(方法名为MultiAB)、商 (方法名为DivAB)的方法。
用另一个java程序TestSuansu.java测试Suansu.java定义的方法,并在屏幕上输出结果。
5、创建一个名为Rectangle的类来表示一个使用宽度和高度来改变量的矩形,矩形的宽度和高度由构造方法来确定。为Rectangle类创建下列方法:
getArea返回矩形的面积,要求长和高的范围为0~50;
getPerimeter返回矩形的周长;
Draw使用星号(*)作为描绘字符画出该矩形(假设宽度和高度为整数);
在另一个类TestRectangle中编写main方法来测试Rectangle类。
6、用面向对象的思想定义一个接口Area,其中包含一个计算面积的方法CalsulateArea(),然后设计MyCircle和MyRectangle两个类都实现这个接口中的方法CalsulateArea(),分别计算圆和矩形的面积,最后写出测试以上类和方法的程序。
7、创建一个Frame,有两个Button按钮和一个TextField,点击按钮,在TextField上显示Button信息。
8、创建下图的GUI程序(注意:不需要提供任何功能)。
9、编写一个文件拷贝的程序,将文件C:\test1.txt的内容拷贝到C:\test2.txt中。
10、编写一个程序,统计给定文件中每个字母出现的频率。
11、编写一个程序,统计给定文件中包含的单词数目,并按单词表的顺序显示统计结果。
12、用图形界面设计一个简单的计算器。
13、用图形界面实现简单的银行柜台业务,包含创建新帐户、取款、存款、查询帐户余额等业务。
java练习题
【程序1】
题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?
1.程序分析: 兔子的规律为数列1,1,2,3,5,8,13,21....
【程序2】
题目:判断101-200之间有多少个素数,并输出所有素数。
1.程序分析:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除,
则表明此数不是素数,反之是素数。
【程序3】
题目:打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个"水仙花数",因为153=1的三次方+5的三次方+3的三次方。
1.程序分析:利用for循环控制100-999个数,每个数分解出个位,十位,百位。
【程序4】
题目:将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5。
程序分析:对n进行分解质因数,应先找到一个最小的质数k,然后按下述步骤完成:
(1)如果这个质数恰等于n,则说明分解质因数的过程已经结束,打印出即可。
(2)如果nk,但n能被k整除,则应打印出k的值,并用n除以k的商,作为新的正整数你n,重复执行第一步。
(3)如果n不能被k整除,则用k+1作为k的值,重复执行第一步。
【程序5】
题目:利用条件运算符的嵌套来完成此题:学习成绩=90分的同学用A表示,60-89分之间的用B表示,60分以下的用C表示。
1.程序分析:(ab)?a:b这是条件运算符的基本例子。
【程序6】
题目:输入两个正整数m和n,求其最大公约数和最小公倍数。
1.程序分析:利用辗除法。
【程序7】
题目:输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。
1.程序分析:利用while语句,条件为输入的字符不为'\n'.
【程序8】
题目:求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。例如2+22+222+2222+22222(此时共有5个数相加),几个数相加有键盘控制。
1.程序分析:关键是计算出每一项的值。
【程序9】
题目:一个数如果恰好等于它的因子之和,这个数就称为"完数"。例如6=1+2+3.编程 找出1000以内的所有完数。
【程序10】
题目:一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在 第10次落地时,共经过多少米?第10次反弹多高?
【程序11】
题目:有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?
1.程序分析:可填在百位、十位、个位的数字都是1、2、3、4。组成所有的排列后再去 掉不满足条件的排列。
【程序12】
题目:企业发放的奖金根据利润提成。利润(I)低于或等于10万元时,奖金可提10%;利润高于10万元,低于20万元时,低于10万元的部分按10%提成,高于10万元的部分,可可提成7.5%;20万到40万之间时,高于20万元的部分,可提成5%;40万到60万之间时高于40万元的部分,可提成3%;60万到100万之间时,高于60万元的部分,可提成1.5%,高于100万元时,超过100万元的部分按1%提成,从键盘输入当月利润I,求应发放奖金总数?
1.程序分析:请利用数轴来分界,定位。注意定义时需把奖金定义成长整型。
【程序13】
题目:一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少?
1.程序分析:在10万以内判断,先将该数加上100后再开方,再将该数加上268后再开方,如果开方后的结果满足如下条件,即是结果。请看具体分析:
【程序14】
题目:输入某年某月某日,判断这一天是这一年的第几天?
1.程序分析:以3月5日为例,应该先把前两个月的加起来,然后再加上5天即本年的第几天,特殊情况,闰年且输入月份大于3时需考虑多加一天。
【程序15】
题目:输入三个整数x,y,z,请把这三个数由小到大输出。
1.程序分析:我们想办法把最小的数放到x上,先将x与y进行比较,如果xy则将x与y的值进行交换,然后再用x与z进行比较,如果xz则将x与z的值进行交换,这样能使x最小。
【程序16】
题目:输出9*9口诀。
1.程序分析:分行与列考虑,共9行9列,i控制行,j控制列。
【程序17】
题目:猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个 第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下 的一半零一个。到第10天早上想再吃时,见只剩下一个桃子了。求第一天共摘了多少。
1.程序分析:采取逆向思维的方法,从后往前推断。
【程序18】
题目:两个乒乓球队进行比赛,各出三人。甲队为a,b,c三人,乙队为x,y,z三人。已抽签决定比赛名单。有人向队员打听比赛的名单。a说他不和x比,c说他不和x,z比,请编程序找出三队赛手的名单。
1.程序分析:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除, 则表明此数不是素数,反之是素数。
【程序19】
题目:打印出如下图案(菱形)
*
***
******
********
******
***
*
1.程序分析:先把图形分成两部分来看待,前四行一个规律,后三行一个规律,利用双重 for循环,第一层控制行,第二层控制列。
【程序20】
题目:有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13...求出这个数列的前20项之和。
1.程序分析:请抓住分子与分母的变化规律。
【程序21】
题目:求1+2!+3!+...+20!的和
1.程序分析:此程序只是把累加变成了累乘。
【程序22】
题目:利用递归方法求5!。
1.程序分析:递归公式:fn=fn_1*4!
【程序23】
题目:有5个人坐在一起,问第五个人多少岁?他说比第4个人大2岁。问第4个人岁数,他说比第3个人大2岁。问第三个人,又说比第2人大两岁。问第2个人,说比第一个人大两岁。最后问第一个人,他说是10岁。请问第五个人多大?
1.程序分析:利用递归的方法,递归分为回推和递推两个阶段。要想知道第五个人岁数,需知道第四人的岁数,依次类推,推到第一人(10岁),再往回推。
【程序24】
题目:给一个不多于5位的正整数,要求:一、求它是几位数,二、逆序打印出各位数字。
【程序25】
题目:一个5位数,判断它是不是回文数。即12321是回文数,个位与万位相同,十位与千位相同。
【程序26】
题目:请输入星期几的第一个字母来判断一下是星期几,如果第一个字母一样,则继续 判断第二个字母。
1.程序分析:用情况语句比较好,如果第一个字母一样,则判断用情况语句或if语句判断第二个字母。
【程序27】
题目:求100之内的素数
【程序28】
题目:对10个数进行排序
1.程序分析:可以利用选择法,即从后9个比较过程中,选择一个最小的与第一个元素交换, 下次类推,即用第二个元素与后8个进行比较,并进行交换。
【程序29】
题目:求一个3*3矩阵对角线元素之和
1.程序分析:利用双重for循环控制输入二维数组,再将a[i][i]累加后输出。
【程序30】
题目:有一个已经排好序的数组。现输入一个数,要求按原来的规律将它插入数组中。
1. 程序分析:首先判断此数是否大于最后一个数,然后再考虑插入中间的数的情况,插入后此元素之后的数,依次后移一个位置。
【程序31】
题目:将一个数组逆序输出。
1.程序分析:用第一个与最后一个交换。
【程序32】
题目:取一个整数a从右端开始的4~7位。
程序分析:可以这样考虑:
(1)先使a右移4位。
(2)设置一个低4位全为1,其余全为0的数。可用~(~04)
(3)将上面二者进行运算。
【程序33】
题目:打印出杨辉三角形(要求打印出10行如下图)
1.程序分析:
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
【程序34】
题目:输入3个数a,b,c,按大小顺序输出。
1.程序分析:利用指针方法。
【程序35】
题目:输入数组,最大的与第一个元素交换,最小的与最后一个元素交换,输出数组。
【程序36】
题目:有n个整数,使其前面各数顺序向后移m个位置,最后m个数变成最前面的m个数
【程序37】
题目:有n个人围成一圈,顺序排号。从第一个人开始报数(从1到3报数),凡报到3的人退出圈子,问最后留下的是原来第几号的那位。
【程序38】
题目:写一个函数,求一个字符串的长度,在main函数中输入字符串,并输出其长度。
【程序39】
题目:编写一个函数,输入n为偶数时,调用函数求1/2+1/4+...+1/n,当输入n为奇数时,调用函数1/1+1/3+...+1/n(利用指针函数)
【程序40】
题目:字符串排序。
【程序41】
题目:海滩上有一堆桃子,五只猴子来分。第一只猴子把这堆桃子凭据分为五份,多了一个,这只猴子把多的一个扔入海中,拿走了一份。第二只猴子把剩下的桃子又平均分成五份,又多了一个,它同样把多的一个扔入海中,拿走了一份,第三、第四、第五只猴子都是这样做的,问海滩上原来最少有多少个桃子?
【程序42】
题目:809*??=800*??+9*??+1 其中??代表的两位数,8*??的结果为两位数,9*??的结果为3位数。求??代表的两位数,及809*??后的结果。
【程序43】
题目:求0—7所能组成的奇数个数。
【程序44】
题目:一个偶数总能表示为两个素数之和。
【程序45】
题目:判断一个素数能被几个9整除
【程序46】
题目:两个字符串连接程序
【程序47】
题目:读取7个数(1—50)的整数值,每读取一个值,程序打印出该值个数的*。
【程序48】
题目:某个公司采用公用电话传递数据,数据是四位的整数,在传递过程中是加密的,加密规则如下:每位数字都加上5,然后用和除以10的余数代替该数字,再将第一位和第四位交换,第二位和第三位交换。
【程序49】
题目:计算字符串中子串出现的次数
【程序50】
题目:有五个学生,每个学生有3门课的成绩,从键盘输入以上数据(包括学生号,姓名,三门课成绩),计算出平均成绩,况原有的数据和计算出的平均分数存放在磁盘文件"stud"中。
===============================================
虽然是C语言的题~但是JAVA一样做,也挺适合初学者的
明天要考java,有几个知识点不理解,求大佬可以把以下的题目代码发一下,能做几个都好,只要注释全就行~
还是耐着性子给你做完了望采纳。。。
第七题
/**
* 动物抽象类
*/
public abstract class Animal {
//颜色
private String color;
//类别
private String type;
//吃饭
public abstract void eat();
//叫
public abstract void cry();
//get set方法省略。。。
}
/**
* 游泳的接口
*/
public interface Swimable {
//游泳
public void swim();
}
/**
* 兔子类
*/
public class Rabbit extends Animal {
@Override
public void eat() {
System.out.println("小兔几吃萝卜。。。");
}
@Override
public void cry() {
System.out.println("小兔几呵呵哒。。。");
}
}
/**
* 青蛙类
*/
public class Frog extends Animal implements Swimable {
public void swim() {
System.out.println("青蛙会蛙泳。。。");
}
@Override
public void eat() {
System.out.println("青蛙吃昆虫。。。");
}
@Override
public void cry() {
System.out.println("青蛙呱呱叫。。。");
}
}
public class Test {
public static void main(String[] args) {
//兔子
Rabbit rabbit = new Rabbit();
rabbit.eat();
rabbit.cry();
//青蛙
Frog frog = new Frog();
frog.eat();
frog.cry();
frog.swim();
}
}
第八题
/**
* 学生类
*/
public class Student {
//学号
private String id;
//姓名
private String name;
//性别
private char gender;
//年龄
private int age;
public Student(String id, String name, char gender, int age) {
this.id = id;
this.name = name;
this.gender = gender;
this.age = age;
}
//获得学号、姓名、性别、年龄
public String toString() {
return "学号:"+id +" 姓名:" + name + " 性别:" + gender + " 年龄:" + age;
}
//修改年龄
public void changeAge(int range) {
age = range;
}
//get set方法省略。。。
}
public class Test {
public static void main(String[] args) {
Student s = new Student("alibb008", "杰克马", '公', 18) ;
System.out.println(s.toString());
s.changeAge(50);
System.out.println(s.toString());
}
}
感慨啊。。。
java编程基础练习题
这道题的答案是C。
double[] num1; //定义一个double类型的数组num1
double num3=2.0; //定义一个double类型的变量并赋值为2.0
int num2=5; //定义一个int类型的冰凉num2,并赋值为5
num1=new double[num2+1];
//给double类型的数组num1赋值,并初始化为5+1个大小, num2=5,所以是5+1
num1[num2]=num3;
//上面这句翻译过来就是:数组num1[5]=2.0 。 由于数组下标从0开始,所以下标为5的元素是最后一个元素。 所以答案是C
求Java基础,练习题。
选择题 (25道)
1. 下列选项中,不属于Java语言特点的一项是( C )。
A:分布式 B:安全性 C:编译执行 D:面向对象
2. Java语言的特点与 C/C+ +语言的比较中说法错误的是:( D )
A:简单性Java继承了 C/C+ +的语法 ,丢弃了其中不常用又容易引起混淆的功能。
B:Java是一种纯面向对象的语言 ,具有封装、继承 ( Inheritance)和多态( Polymorphism)的特点。
C:Java应用程序可凭借URL打开并访问网络上的对象。
D:解释型Java写成的源代码需要被编译成高阶的字节码 ,它们与机器架构有关。
3. 阅读下列代码,选出该代码段正确的文件名( C )。
class A{
void method1(){
System.out.println("Method1 in class A");
}
}
public class B{
void method2(){
System.out.println("Method2 in class B");
}
public static void main(String[] args){
System.out.println("main() in class B");
}
}
A: A.java B:A.class C: B.java D: B.class
4. 如果一个类的文件名为Student.java,但是类的代码为:
public class Student {
public static void main(String[] args) {
System.out.println(82);
}}
那么下列说法正确的是:( B )
A:程序运行结果为8; B:程序运行结果为2;
C:程序运行结果为0; D:程序编译错误,不能运行;
5. 符合对象和类的关系的是( D )。
A:教师和学生 B:书和房子
C:狗和猫 D:飞机和交通工具
6. 关于垃圾回收机制描述不正确的是( B )
A:垃圾回收机制不须通过程序员调用相应方法,也能自动启动。
B:java程序员用System.gc()方法一定能进行垃圾回收;
C:垃圾回收机制属于jvm自动操作,java程序员可以不进行垃圾回收操作。
D:垃圾回收机制并不是由操作系统自动执行。
7. 编译下面源程序会得到哪些文件( D )?
class A1{
}
class A2 exdends A1{
}
public class B{
public static void main(String[] args){
}
}
A: 只有B.class文件 B:只有A1.class和A2.class文件
C: 编译不成功 D:A1.class、A2.class和B.class文件
8. 下列关于基本数据类型的说法中,不正确的一项是( D )。
(A)boolean类型变量的值只能取真或假
(B)float是带符号的32位浮点数
(C)double是带符号的64位浮点数
(D)char是8位Unicode字符
9. 下列(D )是合法的标识符?
A:12class B:void C:-5 D:_blank
10. 在编写Java程序时,如果不为类的成员变量定义初始值,Java会给出它们的默认值,下列说法中不正确的一个是( D )。
A:byte的默认值是0 B:boolean的默认值是false
C: char类型的默认值是’\0’ D: long类型的默认值是0.0L
11. 下列程序执行的结果是:( B )
public class News {
public static void main(String[] args) {
System.out.println(1+2+ "aa"+3);
}}
A: "12aa3" B: "3aa3 " C: "12aa" D: "aa3"
12. 表达式(12==0) (1/0 1)的值为( B )。
A: true B: false C: 0 D: 运行时抛出异常
13. 下列循环体执行的次数是( C )。
int y=2, x=4;
while(--x != x/y){ }
A : 1 B: 2 C : 3 D : 4
14. 已知如下代码:
switch(m){
case 0: System.out.println("Condition 0");
case 1: System.out.println("Condition 1");
case 2: System.out.println("Condition 2");
case 3: System.out.println("Condition 3");break;
default:System.out.println("Other Condition");
}
当m的值为( D )时,输出“Condition 3”
(A)2 (B)0、1 (C)0、1、2 (D)0、1、2、3
15. 下列语句输出的结果是:( C )
public class X3 {
public static void main(String[] args) {
for(int i=0; i10; i++){
if(i==5) break;
System.out.print(i);
}
}
}
A:编译错误; B:1234;C:01234;D:12345;
16. 下列语句输出的结果是:( D )
public class Lx1 {
public static void main(String[] args) {
for(int i=0;i5;i++){
switch(i){
case 0:System.out.print("B");
case 1:System.out.print("e");break;
case 2:System.out.print("g");
case 3:System.out.print("!");break;
case 4:System.out.print("!");break;
default:System.out.print("!");
}
}
}
}
A:Beg!!! B:Beeg! C:Beg! D:Beeg!!!
17. 下面foreach循环的程序输出结果是( D )。
public class Lx1{
public static void main(String[] args) {
String s1[]={"欢迎您","3","G","同","学",};
Arrays.sort(s1);
for(String s0:s1)
System.out.print (s0);
}
}
A:欢迎您3G同学 B:3G欢迎您同学 C:同学欢迎您3G D:3G同学欢迎您
18. 阅读以下程序,选择正确的运行结果:( B )
public class Lx1 {
public static void main(String[] args) {
byte d[]="YOUIHE你我他".getBytes();
String s=new String(d,6,2);
System.out.println(s);
}
}
A:HE; B:你; C:我; D:他
19. 设有下列数组定义语句:
int a[][]= {{1, 2}, {3}};
则对此语句的叙述正确的是( D )。
A: 定义了一个名为a的一维数组 B: a数组 a[1][1]为0
C: a数组元素的下标为1~3 D: 数组中每个元素的类型都是整数
20. 下列程序输出的结果是:( B )
public class Lx1 {
public static void main(String[] args) {
String a[][] ={{"","","",""},{""},{"",""}};
System.out.println(a[2].length);
}
}
A:1 B:2 C:3 D:4
21. 关于以下程序的说明,正确的是( C )
1. class StaticStuff
2. {
3. static int x=10;
4. static { x+=5;}
5. public static void main(String args[ ])
6. {
7. System.out.println(“x=” + x);
8. }
9. static { x/=3;}
10. }
A、4行与9行不能通过编译,因为缺少方法名和返回类型
B、9行不能通过编译,因为只能有一个静态初始化器
C、编译通过,执行结果为:x=5
D、编译通过,执行结果为:x=3
22. 给出下面代码,关于该程序以下哪个说法是正确的?( C )
public class Person{
static int arr[] = new int[5];
public static void main(String a[]) {
for(int i=0;i
System.out.print(arr[0]);
}
}
A、编译时将产生错误 B、编译时正确,运行时将产生错误 C、输出零 D、输出空
23. 下面程序中类ClassDemo中定义了一个静态变量sum,分析程序段的输出结果。( C )
class ClassDemo {
public static int sum=1;
public ClassDemo() {
sum = sum + 5;}
}
public class ClassDemoTest{
public static void main(String args[]) {
ClassDemo demo1=new ClassDemo();
ClassDemo demo2=new ClassDemo();
System.out.println(demo1.sum);}
}
A: 0 B: 6 C: 11 D: 2
24. 下面关于方法的说法,不正确的是( C )。
A: Java中的构造方法名必须和类名相同
B: 方法体是对方法的实现,包括变量声明和合法语句
C: 如果一个类定义了构造方法,也可以用该类的默认构造方法
D: 类的私有方法不能被其他类直接访问
25. 在Java中下列说法正确的是( C )
A) 一个子类可以有多个父类,一个父类也可以有多个子类
B) 一个子类可以有多个父类,但一个父类只可以有一个子类
C) 一个子类可以有一个父类,但一个父类可以有多个子类
D) 上述说法都不对
java基础小项目练习题的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于java项目题目、java基础小项目练习题的信息别忘了在本站进行查找喔。
发布于:2022-12-23,除非注明,否则均为
原创文章,转载请注明出处。