一、 选择题。
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),使用数组保存生成的每次随机数。要求数组的前六位不能出现重复的数字。提示:使用数组和二重循环。