一、 选择题。
1、 以下关于二重循环的说法正确的是(D)。
A. 二重循环就是一般程序中只能有两个循环
B. While循环不能嵌套在for循环里
C. 两个重叠的循环不能嵌套在第三个循环里。
D. 如果一个for循环被嵌套在另一个中,则两个循环中的循环变量必须不同。
作用域的问题
1、 下面程序段的输出结果为(9)。
int count = 0;
int i =3;
int j = 0;
do{
j = 1;
while(j<3){
count ++;
j ++;
}
i--;
}while(i>0);
count += j;
System.out.println(count);
A. 6
B. 7
C. 8
D.9
2、 若想打印如下图案,下面代码划线处应依次填入()。
*
* *
* * *
* * * *
int j =0;
for(i= 1;i<= _4_;i++){
j = 1;
while(j<= _i_){
System.out.print(“*”);
j++;
}
System.out.pritnln(“ ”);//实现换行
}
A.3 4
B.3 i
C.4 4
D.4 i
3、 下面说法正确的是(C)。
A. 程序执行到break语句时一定会结束所有循环。(跳出本层循环)
B. 程序执行到continue语句时会结束当前循环(跳过本次循环,变量++,继续执行)
C. continue和break语句可以同时出现在同一个循环体中
D. continue和break语句的作用相同(不同)
4、 下面程序段的输出结果为(B)。
int count = 0;
for(int i=0;i<3;i++){
for(int j=0; j<3;j++){
if(j == 0){
continue;
}else{
count ++;
break;
}
}
}
System.out.println(count);
A. 1
1 package com.neusoft.arraytest.test2;
2 /**
3 * 双色球类
4 * 前6个是红色球数字1-33不能重复
5 * 第7个是蓝色球,1-16 可与前面的6个数字重复
6 * @author ljj
7 *
8 */
9 public class TwoBall {
10
11 public void twoColorBall(){
12 //创建一个7位数组
13 int[] ball = new int[7];
14
15 //前6个是红色球数字1-33不能重复
16 for(int i=0 ;i<ball.length-1;i++){
17 //产生一个1-33的随机数
18 int num =(int)(Math.random()*33+1);
19 ball[i]=num;
20
21 //如果数值有重复,要在原来的位置上重新生成随机数
22 for(int j=0;j<i;j++){
23 if(ball[j]==ball[i]){
24 i--;
25 break;
26 }
27 }
28
29 }
30
31 //第7个是蓝色球,1-16 可与前面的6个数字重复
32 ball[6]=(int)(Math.random()*16+1);
33
34 //打印显示7个号码
35 for (int i = 0; i < ball.length; i++) {
36 System.out.print(ball[i]+" ");
37 }
38
39
40 }
41
42 }
B. 3
C. 6
D. 9
1, 彩票生成系统:
生成一组随机的双色球彩票(一共7个数字,前六位随机范围为1-33,最后一位范围1-16),使用数组保存生成的每次随机数。要求数组的前六位不能出现重复的数字。提示:使用数组和二重循环。