2020-03-02 01:06:41 来源:范文大全收藏下载本文
练习题一
一.选择题
1.下列变量定义错误的是。
( ) A) int a;
B) double b=4.5; C) boolean b=true;
D)float f=9.8; 2.下列数据类型的精度由高到低的顺序是:
( ) A)float,double,int,long B)double,float,int,byte C)byte,long,double,float D)double,int,float,long 3.对于一个三位的正整数 n,取出它的十位数字k(k为整型)的表达式是(
)。
A) k = n / 10 % 10
B) k = ( n1; A) 10
B) 121
C) 11
D) 100 16.设有定义
float x=3.5f, y=4.6f, z=5.7f;则以下的表达式中,值为true的是(
A) x > y || x > z
B) x != y
C) z > ( y + x )
D) x
int i=123; long j=456; 下面赋值不正确的语句是(
)。
A) j=i;
B) j=(long)i;
C) i=(int)j;
D) i=j; 18.下列的变量定义中,错误的是(
)。
A) int i;
B) int i=10000;
C) int a1=100;
D) int 123_$; 19.以下的变量定义语句中,合法的是(
)。
A) float $_*5= 3.4F;
B) byte b1= 15678;
C) double a =10000;
D) int _abc_ = 3721L; 20.以下字符常量中不合法的是(
)。
A) \'|\' B) \'\\\' \' C) \"\\n\" D) \'我\' 21.若以下变量均已正确定义并赋值,下面符合Java语言语法的语句是(
)。
A) b = a!=7 ;
B) a = 7 + b + c=9; C) i=12.3* % 4;
D) a = a + 7 = c + b; 22.执行下列程序段后,b, x, y的值分别是(
)。
int x=6,y=8; boolean b; b=x>y&&++x==--y; A) true , 6, 8 B) false , 7, 7
)。
C) true, 7, 7
D) false, 6, 8 23.下列语句序列执行后,i 的值是(
)。
int i=8, j=16;
if( i-1 > j ) i--; else j--; A) 15
B) 16
C) 7
D) 8 24.下列语句序列执行后,m 的值是(
)。
int a=10, b=3, m=5;
if( a==b ) m+=a; else
m=++a*m; A) 15
B) 50
C) 55
D) 5 25.下列语句序列执行后,k 的值是(
)。
int i=4,j=5,k=9,m=5;
if(i>j||m
B) 10
C) 8
D) 9 26.下列语句序列执行后,k 的值是(
)。
int i=10, j=18, k=30; switch( j-j;
A) 5
B) 6
C) 7
D) 8 39.下列语句序列执行后,k 的值是(
)。
int m=3, n=6, k=0;
while( (m++)
B) 1
C) 2
D) 3 40.以下由do-while语句构成的循环执行的次数是(
)。
int m = 8;
do { ++m; } while ( m
B)执行1次
C)8次
D)有语法错,不能执行
41.下列语句序列执行后,i的值是(
)。
int i=10;
do { i/=2; } while( i>1 ); A) 1
B) 5
C) 2
D) 0 42.下列语句序列执行后,i的值是(
)。
int i=10;
do { i/=2; } while( i--> 1 ); A) 1
B) 5
C) 2
D) –1 43.下列循环中,执行break outer语句后,所列(
)语句将被执行。
outer:
}
for(int i=1;i
inner: for(int j=1;j
} if(i*j>50) break outer; System.out.println(i*j); next: A)标号为inner的语句
B)标号为outer的语句 C)标号为next的语句
D)以上都不是
44.下列循环中,执行continue outer语句后,(
)说法正确。 outer:
for(int i=1;i
} inner: for(int j=1;j
} if(i*j>50) continue outer; System.out.println(i*j); next: A)程序控制在外层循环中并且执行外层循环的下一迭代 B)程序控制在内层循环中并且执行内层循环的下一迭代 C)执行标号为next的语句 D)以上都不是
二.填空题
1.以下代码的输出结果是________________。
int i=9; char c=‟a‟; char d=(char)(c+i); System.out.println(d); 2.面代码执行完后的输出是__________-。 int x=3; int y=4; boolean b=true; System.out.println(\"b is:\"+(b==(yy&&z>y的结果是__________________。 4.在Java语言中,逻辑常量只有true 和 ___________ 两个值。 5.表达式1/2*3的计算结果是_________。
6.执行以下程序段后:a = ________, b = ________ 。
int a = 5, b; b = ++a * 3; 7.Java中的字符使用的是16位的________________ 编码。
8.当整型变量n的值不能被13除尽时,其值为 false 的Java语言表达式是_____________ 。 9.表达式3/6 * 5的计算结果是________ 。
10.若a,b为int型变量且已分别赋值为2,4。表达式!(++a!=b--)的值是_________ 。 11.若a,b为int型变量且已分别赋值为2,6。表达式(a++)+(++b) +a*b的值是________ 。 12.Java语言中的浮点型数据根据数据存储长度和数值精度的不同,进一步分为float和 __________两种具体类型。
13.所有的程序都可以用三种类型的控制结构编写: , , 。
三.程序填空题
1.下面是一个java应用程序(Application),它的功能是计算
s=1+2+3+...+10 ,请完成程序填空。
public _____ Cla1 {
public static void main( String args[] )
{
int s=0;
for (int i=1;i
{
s+=______;
}
System.out.println(\"s=\"+s);
} } 2.下面是一个java Application 的主类的定义,其功能是输出乘法口诀表第一列,请完成程序填空。
public cla MyCla {
public static void main(String[] args)
{
int
j=1;
for(int i=1; _______; i++)
{
System.out.println(i+\"*\"+j+\"=\"+_______);
}
} } 3.设ch1, ch2是 char 型变量:
if ( ch1 == „a‟ )
{
if ( ch2 == „b‟ )
System.out.print(\" ch1=\\‟a\\‟ , ch2=\\‟b\\‟ \");
}
else
System.out.print(\" ch1!=\\‟a\\‟ \");
System.out.println(\" end \"); 问题: 1)若执行前 ch1 的值为 „a‟, ch2 的值为 ‟c‟ 该程序段输出是什么?
2)若执行前 ch1 的值为 ‟w‟, ch2 的值为 ‟b‟ 该程序段输出是什么?
3)若执行前 ch1 的值为 ‟a‟, ch2 的值为 ‟b‟ 该程序段输出是什么? 4.阅读下面的程序段,回答问题。 if ( x
5.确定以下各段程序当x=9 , y=11以及x=11 , y=9 时的输出结果。(下面程序我们取消缩进格式) a)
if ( x 10 ) System.out.println(“*****”); else System.out.println(“#####”); System.out.println(“$$$$$”); b)
if ( x 10 ) System.out.println(“*****”); } else { System.out.println(“#####”); System.out.println(“$$$$$”); } 四.编程题
1.写输出1到100中能被7整除(例如
14、21)或者个位数是7(例如
27、47)的数字。 2.写一个嵌套的for循环打印下列图案: 1 1 2 1 2 3 1 2 3 4 1 2 3 4 5 3.水仙花数是指个位、十位和百位三个数的立方和等于这个三位数本身的数,编写程序求出所有的水仙花数。
4.用while循环求n2大于12000的最小数n。
5.一个绳子长3000米,每天截取一半,编写程序求需要多少天,绳子长度小于5米。 6.编写JAVA Application,要求输出一个如下图的菱形。
*
*
* *
* *
* *
*
*
* *
* 7.修改6题的程序,读入一个1到19之间的奇数作菱形行数,然后显示相应大小的菱形。
8.编写一个主类Triangle,要求在它的main方法中写一个嵌套的for循环,通过这个嵌套的循环在屏幕上打印下列图案:
9.写一个嵌套的for循环打印下列图案:
1 1 2 1 1 2 4 2 1 1 2 4 8 4 2 1 1 2 4 8 16 8 4 2 1 1 2 4 8 16 32 16 8 4 2 1 1 2 4 8 16 32 64 32 16 8 4 2 1 1 2 4 8 16 32 64 128 64 32 16 8 4 2 1 10.打印2到10000的所有素数,每行显示8个素数。
① 用循环语句在2到10000之间循环,判断该数是否为素数。
② 对于素数i的判断:为提高运行效率,可考虑从1—i/2之间依次判断是否有能整除i的数,一旦有,就无需进行后续数的判断,直接跳出循环体,循环体的跳出可考虑用break,跳出前可用boolean型变量标识其为非素数。
③ 打印输出时,要求每行显示8个,用一个整型变量记录素数的个数,每8个换行输出。
1 2 1
1 2 3 2 1
1 2 3 4 3 2 1 1 2 3 4 5 4 3 2 1 1 2 3 4 5 6 5 4 3 2 1 1 2 3 4 5 6 7 6 5 4 3 2 1 1 2 3 4 5 6 7 8 7 6 5 4 3 2 1
人人范文网 m.inrrp.com.cn 手机版