选择语句+循环语句作业

选择语句+循环语句作业

一、 填空题

  1. Java中有两种类型的选择结构的控制语句,分别是if语句和  switch          
  2. Java JDK1.7之前,switch只能支持byteshortcharint或者其对应的封装类以及Enum类型。在JDK1.7中又加入了    String        类型。
  3. for循环的语法格式是for (表达式1;表达式2;表达式3) {循环体},其中在整个循环过程中只执行一次的部分是   表达式1        
  4. 在循环结构中,如果想跳出循环体,结束整个循环结构可以使用     break    语句。
  5. ___________continue__语句用在循环语句体中,用于终止某次循环过程,即跳过循环体中尚未执行的语句,接着进行下一次是否执行循环的判定。即只结束本次循环,而不是终止整个循环的执行。

 

 

二、 选择题

 

1.

以下代码的执行结果是(   B  。(选择一项)

 

boolean m = false;

if(m = false){

System.out.println("false");

}else{

System.out.println("true");

}

A.

false

B.

true

C.

编译错误

D.

无结果

 

2.

分析如下Java代码,编译运行的输出结果是(   B )。(选择一项)

 

public static void main(String[ ] args) {

boolean a=true;

boolean b=false;

if (!(a&&b)) {

System.out.print("!(a&&b)");

}else if (!(a||b)) {

System.out.println("!(a||b)");

}else {

System.out.println("ab");

}

}

A

!(a&&b)

B.

!(a||b)

C.

ab

D.

!(a||b)ab

 

3.

下列选项中关于变量x的定义,( BD   )可使以下switch语句编译通过。(选择项)

 

switch(x) {

    case 100 :

        System.out.println("One hundred");

        break;

    case 200 :              

        System.out.println("Two hundred");                 

        break;

    case 300 :

        System.out.println( "Three hundred");

        break;

    default :

        System.out.println( "default");    

}

A

double x = 100;

B.

char x = 100;

C.

String x = "100";

D.

int x = 100;

 

4.

阅读下列文件定入的Java代码,其执行结果是(   D  )。(选择一项)

public class Test {

public static void main(String[] args) {

char ch = 'c';

switch (ch) {

    case 'a':

    System.out.print("a"); break;

    case 'b':

    System.out.print("ab");

    case 'c':

    System.out.print("c");

    default:

    System.out.print("d");

}

}

}

A

a

B.

b

C.

c

D.

cd

 

5.

以下Java程序编译运行后的输出结果是(   B )。(选择一项)

 

public class Test {

public static void main(String[] args) {

int i = 0, sum = 0;

while (i <= 10) {

sum += i;//sum=sum+i

i++;

}

System.out.println(sum);

}

}

A

0

B.

55

C.

50

D.

36

 

6.

以下四个选项中和下面代码功能相同的是(   B  )。(选择一项)

int i = 1;

int sum = 0;

while (i <= 100) {

if (i % 2 == 0)

sum = sum + i;

i++;

}

A

for (int x =1; x<=100;x++){ sum=sum+x;}//1-100的和

B.

for (int x =0; x<=100;x+=2){ sum=sum+x;}//1-100之间偶数的和

C.

for (int x =1; x<=100;x+=2){ sum=sum+x;}//1-100之间奇数的和

D.

上述全对

 

7.

以下do-while循环代码的执行结果是(  A  )。(选择一项)

 

int a=0;

int c=0;

do{

--c;

a=a-1;

}while(a>0);

System.out.println(a+"  "+c);

A.

-1  -1

B.

死循环

C.

-1  -2

D.

-1  0

 

8.

while循环和do-while循环的区别是D   )。(选择一项)

A.

没有区别,这两个结构在任何情况下效果一样

B.

while循环比do-while循环执行效率高

C.

while循环是先循环后判断,所以循环体至少被执行一次

D.

do-while循环是先循环后判断,所以循环体至少被执行一次

 

9.

Java中有如下代码,则编译运行该类的输出结果是(  D  )。(选择一项)

 

public static void main(String[ ] args) {

for(int i=0;i<10;i++){

if (i%2!=0)

return;//结束方法

System.out.print(i);

}

}

A

13578

B.

02468

C.

0123456789

D.

0

 

10.

下面程序执行的结果在屏幕上打印(  B   )Java基础班(选择一项)

for(int  i=1;i<=10;i++){

if (i<5)

continue;

System.out.println("Java基础班");

}

A

5

B.

6

C.

7

D.

8

 

三、 判断题(共20个题目,总计10分)

  1. if语句的条件表达式的结果都必须是boolean值。( √  )
  2. switch选择语句是多分支选择语句,只能处理等值条件判断的情况,表达式可以是int类型、char类型,但不能是double,float类型。( √  )
  3. while循环结构的特点是先循环再判断,循环体至少执行一次。(  ×  
  4. for循环的语法格式是for (表达式1;表达式2;表达式3) {循环体},其中三个表达式都可以省略。( ×  )
  5. break语句可以出现在switch语句和循环语句中。(  √  
  6. continue语句可以出现在switch语句和循环语句中。(  ×  

 

四、 简答题

  1. if多分支语句和switch语句的异同之处

相同点:都能进行多分支情况的处理

不同点:if语句的判断条件大部分都是bool类型,switch语句是用(类似)枚举的方式来标识各个分支的

  1. whiledo-while语句的异同之处

相同点:都是循环结构

 

不同点:while语句是先判断后执行

       while循环是先判断条件是否成立,然后决定是否执行循环体

do-while语句是先执行后判断,

do-while循环至少执行一次循环体

 

  1. breakcontinue语句的作用

   break:终止循环

   continue:终止本次循环,继续下次循环

 

 

五、 编码题

  1. 输入一个数,判断是奇数还是偶数
import java.util.Scanner;//导包

class Take1 {

public static void main(String[] args) {

Scanner sc=new Scanner(System.in);//创建键盘录入对象

System.out.print("请输入一个数:");

int x=sc.nextInt();               //通过对象获取数据

 

if (x%2==0) {                     //判断x是奇数还是偶数

System.out.println("输入的是偶数");

}else {

System.out.println("输入的是奇数");

}

}

}
  1. 根据成绩输出对应的等级,使用if多分支和switch语句分别实现。

a) A级   [90,100]

b) B级   [80,89)

c) C级   [70,79)

d) D级   [60,69)

e) E级   [0,59)

if多分支语句

import java.util.Scanner;//导包

class Take2_1 {

public static void main(String[] args) {

Scanner sc=new Scanner(System.in);//创建键盘录入对象

System.out.print("请输入成绩:");

int x=sc.nextInt();               //通过对象获取数据

 

if (x>=90 && x<=100) {

System.out.println("输入成绩的等级为:A级");

}else if (x>=80 && x<=89) {

System.out.println("输入成绩的等级为:B级");

}else if (x>=70 && x<=79) {

System.out.println("输入成绩的等级为:C级");

}else if (x>=60 && x<=69) {

System.out.println("输入成绩的等级为:D级");

}else if (x>=0 && x<=59) {

System.out.println("输入成绩的等级为:E级");

}else {

System.out.println("输入成绩的有误,请重新输入!");

}

}

}

switch语句

import java.util.Scanner;//导包

class Take2_2 {

public static void main(String[] args) {

Scanner sc=new Scanner(System.in);//创建键盘录入对象

System.out.print("请输入成绩:");

int x=sc.nextInt();               //通过对象获取数据

 

if (x<0 || x>100) {

System.out.println("输入成绩的有误,请重新输入!");

}else {

 

switch (x/10) {

case 10:

case 9:

System.out.println("输入成绩的等级为:A级");

break;

case 8:

System.out.println("输入成绩的等级为:B级");

break;

case 7:

System.out.println("输入成绩的等级为:C级");

break;

case 6:

System.out.println("输入成绩的等级为:D级");

break;

default:

System.out.println("输入成绩的等级为:E级");

break;

}

}

}

}
  1. 根据月份,输出对应的季节,并输出至少两个描述该季节的成语和活动。
import java.util.Scanner;//导包

class Take3 {

public static void main(String[] args) {

Scanner sc=new Scanner(System.in);//创建键盘录入对象

System.out.println("请输入月份:");

int month=sc.nextInt();               //通过对象获取数据

 

switch (month) {

case 1:

case 2:

case 3:

System.out.println("春天-春暖花开 春意盎然-植树 踏青");

break;

case 4:

case 5:

case 6:

System.out.println("夏天-夏日炎炎 夏雨雨人-游泳 吃雪糕");

break;

case 7:

case 8:

case 9:

System.out.println("秋天-秋高气爽 秋风萧瑟-旅游 看枫叶");

break;

case 10:

case 11:

case 12:

System.out.println("冬天-冬山如睡 冬温夏清-滑雪 堆雪人");

break;

default:

System.out.println("输入的月份有误!");

break;

}

 

}

}
  1. 从键盘输入一个班5个学生的分数,求和并输出。
//从键盘输入一个班5个学生的分数,求和并输出。

import java.util.Scanner;//导包

class Take4 {

public static void main(String[] args) {

Scanner sc=new Scanner(System.in);//创建键盘录入对象

int sum=0;

 

for (int i=1;i<=5 ;i++ ) {

System.out.println("请输入"+"第"+i+"的成绩:");

int grade=sc.nextInt();               //通过对象获取数据

 

if (grade<0 && grade<100) {

System.out.println("输入有误,请重新输入");

}

sum=sum+grade;

}

System.out.println("一个班5个学生的分数的和是:"+sum);

}

}

 

六、 可选题

  1. 根据考试成绩输出对应的礼物,90分以上爸爸给买电脑,80分以上爸爸给买手机, 60分以上爸爸请吃一顿大餐,60分以下爸爸给买学习资料。

要求:该题使用多重if完成

import java.util.Scanner;//导包

class Take5 {

public static void main(String[] args) {

Scanner sc=new Scanner(System.in);//创建键盘录入对象

System.out.print("请输入成绩:");

int x=sc.nextInt();               //通过对象获取数据

 

if (x>=90) {

System.out.println("爸爸给买电脑");

}else if (x>80 && x<=90) {

System.out.println("爸爸给买手机");

}else if (x>60 && x<=80) {

System.out.println("爸爸请吃一顿大餐");

}else if (x>0 && x<=60) {

System.out.println("爸爸给买学习资料");

}else {

System.out.println("输入的成绩的有误!");

}

}

}

 

20块钱买可乐,每瓶可乐3块钱,喝完之后退瓶子可以换回1块钱,问最多可以喝到多少瓶可乐。

 

 

 

原文地址:https://www.cnblogs.com/wty1994/p/9278020.html