欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Java编程基础测试题分享

程序员文章站 2024-04-01 21:27:58
单选题:(每道题目2分) 1. 下列哪个声明是错误的?(b) a.  int i=10; b.  float f=1.1; &...

单选题:(每道题目2分)

1. 下列哪个声明是错误的?(b)

a.  int i=10;
b.  float f=1.1;     //float f=1.1f
c.  double d=34.4;
d.  byte b=127;

long类型的数据加后缀l或者l
float类型的数据加后缀f或者f
整数默认是int类型
浮点数默认是double类型

2. 下面哪个不是java中的关键字?(c)

a. public
b.  true
c.  main
d.  class

3. 下面程序哪个语句是正确的(c)

a.  byte a=0,b=3; byte c =a+b;//a+b的类型为int
b.  short s =23; s=s+12;
//s+12底层是转成int进行相加,所以结果为int。
c.  short s=23; s+=12;  //相当于s=(short)(s+12)
d.  float f = 23+23.23;  //23+23.23的结果为double

4. 下面程序执行的结果是?(b)

class test
{
	public static void main(string[] args)
	{
		system.out.println(“”+‘a'+1);
	}
}

a. 98
b.  a1
c.  971
d.  197

//空串放前相当于字符串的拼接,空串放后,‘a'+1,先做运算,再与空串进行拼接,byte,short,char可以自动转为int,

5. 下面程序执行的结果是?(b)

int i =100;
while(true)
{
	if (i++ > 100)  //i先计算在自加
	{
		break;
	}
	system.out.println(i);
}

a.  100
b.  101
c.  102
d.  报错

6.  下面程序的运行结果是   ( d )

int a=3,b=1;
if(a==b)
{
	system.out.println("a="+a);
}

a.  a=1   
b.  a=3
c.  编译错误
d.  正常运行但没有输出

7. 下面程序的运行后,结果正确的是:(b)

inta=1,b=2;
intc=(a+b>3?a++:++b); //a=1,b=3,c=3

a.  a=2,b=3
b.  a=1,b=3
c.  a=1,b=2
d.  c=2

8. 下面程序的运行结果(b)

classdemo
{
	public static int fun(int c)
	{
		return c+=2;
	}
	public static void main(string[] args)
	{
		int temp = fun(2);
		system.out.println(temp);
	}
}

a.  2
b.  4
c.  6
d.  8

9. 下面数组定义错误的是(c)

a.  int [] arr ={23,45,65,78,89};  //静态初始化
b.  int [] arr=new int[10] ;        //动态初始化
c.  int [] arr=new int[4]{3,4,5,6};
d.  int [] arr={‘a', 23 , 45 , 6};

//‘a'可以自动转为int,

 10. 下面程序执行的结果是?(d )

int x=1,y=1;
if(x++==2& ++y==2)
 //x=2,y=2,&与&&的结果相同但是&不具有短路效果
{
	x=7;
}
system.out.println("x="+x+" , y="+y);

a.  x=1 y=2
b.  x=7 y=1
c.  x=7 y=2
d.  x=2 y=2

11. 下面不属于基本数据类型的是(d)

a.  int
b.  double
c.  long
d.  int[] //引用类型

12. 下面程序执行的结果是?( c)

booleanb=true;
if(b=false)     //将false赋值给b,则b=false
{
	system.out.println("a");
} elseif(b)
{
	system.out.println("b");
} elseif(!b)
{
	system.out.println("c");
} else
{
	system.out.println("d");
}

a. a 
b. b
c. c
d. d

13. 下面程序执行的结果是?(d)

intx=2,y=3;
switch(x)
{
	default: 
	   y++;
	//y=4,但是没有break,程序继续向下执行
	case 3:
	   y++;
	case 4:
	   y++;
}
sysetem.out.println("y="+y);

a.  3
b.  4
c.  5
d.  6

14. 下面程序执行的结果

for(int i=1;i<=10;i++)
{
  if (i%3==0) 
  {     
   continue;  //continue跳出本次循环
  }
system.out.println(“java基础班”);
}

在屏幕上打印几次“java基础班”?( c )

a.  5
b.  6
c.  7
d.  8

15.阅读下面代码段:

classdemo
{
  public static void main (string[] args)
  {
   int[] arr = new int[10];
   system.out.println(arr[1]);
  }
}

执行结果正确的说法是( c )

a.  编译时将产生错误
b.  编译时正确,运行时将产生错误
c.  输出零
d.  输出空

16 .和下面代码能完成相同的选项是(b)

int i=1;
intsum=0;
while(i<=100)
{
	if(i%2==0)
	  {
		sum=sum+i;
	}
	i++;
}

a.  for (int x=1; x<=100;x++){ sum=sum+x;}
b.  for (int x =0; x<=100;x+=2){ sum=sum+x;}  //偶数求和
c.  for (int x =1; x<=100;x+=2){ sum=sum+x;}  //奇数求和
d.上述全对

17.  以下代码输出是(  d )

int i=0;
int sum=0;
while(i<=10)
{
i++;
  if( i%2!=0 )
   continue;
sum+=i;
}
system.out.println(sum);  //sum=2+4+6+8+10

a.  55
b.  45
c.  35
d.  30

18.  给出下列代码片段:

if ( x> 0 ) { system.out.println(“hello”); }
else if (x >-3 ) { system.out.pirntln ( “i am tom”); }
else {system.out.println (“how are you?”); }

请问将打印字符串 “how are you ?”的x的范围是( c)

a.   x>0
b.   x > -3
c.   x <= -3
d.   x <=0 & x >-3

19. 下列代码执行的结果为( a )

classdemo
{
	public static void main(string[] args)
	{
		int num =max(43,34);
		//num=43
		system.out.println(num);
	}
	public static int max(int a,int b)
	{
		returna>b?a:b;
	}
}

a.  43
b.  23
c.  77
d.  9

20 .下面程序执行的结果是( a )

classdemo
{
	public static void main(string [] args)
	{
		int a=10;
		if(a++>10)
		{
			a=20;
		}
		system.out.println(a);
	}
}

a.  11
b.  12
c.  20
d.  21

多选题:(每道题目3分)

21. 下面哪些是合法的标志符( b.c.d)

a.  2variable
b.  variable2
c.  what$
d.  _3_

//不能以数字开头,不能是java中的关键字,字母区分大小写

22.   下列方法中能和方法int max(int  a, int  b, double  c)构成重载关系的是( b,c )

a.  double max(int  a, int  b, double c)
b.  void max(int  a, double  c, int b)
c.  int max(double a, int  b)
d.  int max(int  x, int  y, double z)

//同一个类中,方法名相同,参数类型或参数个数不同,与返回值类型无关

23. 下面的说法正确的是( a,c, )

a.  byte ,short,char 数据类型可以自动转化为int
b.  float 数据类型可以自动转换为long。
c.  在java语言中默认小数为double
d.  byte a=23; byte b=12;  a+b的结果为byte类型 //int

24. 下面关于方法描述正确的是(a,d)

a.  方法是对功能代码块的封装
b.  方法没有返回值的时候什么都不用写
c.  没有返回值的方法,不能有return 语句
 //每句后面都可以以有默认的return ;也可以手动加上
d.  方法是可以没有形参的

25. 下面关于循环描述正确的是(a,d)

a.  while循环先判断循环条件,后执行循环操作
b.  while 至少会执行一次
c.  do-while先进行循环条件判断,后执行循环操作
d.  do-while循环至少执行一次,后进行循环判断

简答题目:(每道题目5分)

26:jdk,jre,jvm是什么,有什么用,它们之间又有什么关系?

jdk:java程序的开发环境,包含jre和java开发工具
jre:java程序的运行环境,包含jvm和java的核心类库
jvm:保证java语言的跨平台性

27:数组是基本类型吗? java中基本数据类型分类有哪些?

不是,基本数据类型分为4类8种;
整型:byte  short  int long
字符型:char
布尔类型:boolean
浮点型:float  double

28:方法是什么?它的运行特点是什么?

方法:完成特定功能的代码块
运行特点:不调用不执行;方法调用的时候不用再传递数据类型;方法与方法是平级的,不能嵌套调用;方法定义的时候参数之间用逗号隔开;方法不调用不执行;如果方法有明确的返回值,一定要用return带回一个值。

29:数组是什么?我们根据什么可以获取数组中的元素呢?

数组是存储同一种数据类型并且可以存储多个元素的容器;我们可以根据数组的索引来获取数组中的元素。

30:请说说什么时候使用变量,什么时候使用if语句,什么时候使用循环语句?说的有理即可得分。

当一个值不固定,在一定范围内改变时,就需要将其定义为变量。
当需要进行判断的时候用if语句;
当出现大量重复的代码时,就需要使用循环语句。
编程题目:(每道题目10分)
注意:格式,命名规范,注释。

31:在main方法中写一段代码,实现在控制台输出九九乘法表。

package com.practice1;
//在main方法中写一段代码,实现在控制台输出九九乘法表。
public class printtable {
	//定义程序入口
	public static void main(string[] args) {
		//控制外层循环,即第一个乘数
		for (int i = 1; i < 10; i++) {
			//控制内层循环即第二个乘数
			for (int j = i; j < 10; j++) {
				system.out.print(i+"*"+j+"="+i*j+"  ");
			}
			//每打印一行将换行
			system.out.println();
		}
	}
}

32:请写一个方法sum,实现求两个数之和。要求在main方法中调用。

package com.practice1;
//请写一个方法sum,实现求两个数之和。要求在main方法中调用。
public class sumdemo {
  //提供程序入口
  public static void main(string[] args) {
   //调用求和的方法
   system.out.println(add(10,20));
  }
  public static int add(int i, int j) {
   returni+j;
  }
}

33:请写一个方法printarray,实现遍历数组。要求在main方法中调用

package com.practice1;
//请写一个方法printarray,实现遍历数组。要求在main方法中调用。
public class arraydemo {
  //提供程序入口
  public static void main(string[] args) {
   //定义一个数组
   int[] arr={1,2,5,3,6,8};
   //调用数组的遍历方法
   printarr(arr);   
  }
  // 定义一个遍历数组的方法
  private static void printarr(int[] arr) {
   system.out.print("[");
   for (int i = 0; i < arr.length; i++) {
    if(i==arr.length-1){
      system.out.print(arr[i]);
    }else{
      system.out.print(arr[i]+" ");
    }
   }  
   system.out.print("]");
  }
}

总结

以上就是本文关于java编程基础测试题分享的全部内容,感兴趣的朋友可以继续参阅:java高级面试题小结java常见数据结构面试题(带答案)关于java数组查询的相关问题及实例,有问题可以随时留言,小编会及时回复大家的。希望对大家学习java有所帮助!感谢阅读。