《Java语言程序设计与数据结构(基础篇)》第11版第五章复习题答案

5.2.1答案:pointA、B、C处总为false

5.2.2答案:

(a)不输出,重复无数次

(b)不输出,重复无数次

(c)重复九次,输出3579

5.2.3答案:(2^31)-1,也就是2147483647

因为int型数的范围是-2^31到(2^31)-1,所以x最大为2147483647

5.3.1答案:guess的值为零,0可能也是要猜到的数,这样会导致while无法执行,无法输出

5.5.1答案:

max is 5

number 0

5.6.1答案:

max is 5

number 0

5.6.2答案:while先判断后执行,而do-while先执行后判断

Scanner input = new Scanner(System.in);

int sum =0;

System.out.println(“Enter the integer ”+"(the input ends if it is 0)");

int number = input.nextInt();
do{
    sum += number;
    System.out.println(“Enter the integer ”+"(the input ends if it is 0)");
    number = input.nextInt();
        }while(number != 0);

5.7.1答案:具有相同的值

5.7.2答案:

初始操作;循环继续条件;每次迭代后的操作

for(i = 1;i<=100;i++){
    System.out.print(i);
        }

5.7.3答案:

sum is 14

count is 5

5.7.4答案:循环体无限循环下去

5.7.5答案:不可以

5.7.6答案:

while:

long sum = 0;
int i = 0;
while(i<1000){
    sum = sum+i;
    i++;
        }

do-while:

long sum = 0;
int i = 0;
do{
    sum = sum+i;
    i++;
        }while(i<1000);

5.7.7答案:

(a)n次

(b)n+1次

(c)n-5次

(d)(n-6/3)次

5.8.1答案:可以

For循环更加简洁,相比其他两种循环更容易避免出错

5.8.2答案:

int i = 1;
int sum = 0;
for(sum = 0;sum<10000;) {
    sum = sum + i;
    i++;
}

5.8.3答案:

public void 中间没有static,应改为public void static

if(i<j);不应该有分号,应该将分号删去

while(j<10);不应该有分号,应该将分号删去

for(int i=0;i<10;i++);不应该有分号,应该将分号删去

do-while循环中的while语句后面应该有分号,将分号添上

5.8.4答案:while(j<10);不应该有分号,应该将分号删去

5.8.5答案:for(int i=0;i<10;i++);不应该有分号,应该将分号删去

5.9.1答案:println语句应该不执行,因为后面缺少分号

5.9.2答案:

(a)0010120123

(b)

****

****

2****

32****

432****

(c)

1xxx2xxx4xxx8xxx16xxx

1xxx2xxx4xxx8xxx

1xxx2xxx4xxx

1xxx2xxx

1xxx

(d)

IG

1G3G

1G3G5G

1G3G5G7G

1G3G5G7G9G

5.11.1答案:会

5.11.2答案:char与int型数据做运算,会自动转化为int型,而hexValue是char型的

5.11.3答案:对于245执行2次,对3245执行3次

5.11.4答案:F  10

5.11.5答案:System.out.println("The hex number is "+'0'+hex);

5.12.1答案:当程序遇见continue时,它会结束当前的迭代,程序控制转向改循环体的末尾,换句话说,continue只是跳出了一次迭代,而关键字break跳出了整个循环

(a)能结束,balance is 1

(b)不能结束

5.12.3答案:

第一个:

public class TestBreak {
    public static void main(String[] args){
        int sum = 0;
        int number = 0;
        for(sum = 0,number = 0;sum<100;){
            number++;
            sum +=number;
        }
        System.out.println("The number is "+number);
        System.out.println("The sum is "+sum);
    }
}

第二个:

public class TestContinue {
    public static void main(String[] args){
        int sum = 0;
        int number =0;
        do{
            number++;
            if(number == 10|| number == 11){
                sum = sum;
            }
            else
                sum += number;
        }while(number < 20);
        System.out.println("The sum is "+sum);
    }
}

5.12.4答案:

(a)System.out.println(i);

(b)j++

5.14.1答案:System.out.print((count % NOPPL == 0) ? (number + "\n") : (number + " "));

  • 5
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值