AP计算机科学A:标准数据结构

AP计算机科学A的学习概念,示例问题和解释

大学导师应用商店 大学导师安卓商店

例子问题

←之前 1 3. 4 5 6 7 8 9 10 11

问题51:计算机科学

Int x = 10;

Int y = 4;

Int z = x / y;

价值是什么z?

可能的答案:

正确答案:

解释

这不能产生预期产出2.5的原因有两个:

  1. 当除以两个整数操作数时,结果将返回为int.通过将其中一个操作数(或整个表达式)强制转换为float类型或double类型来解决这个问题。
  2. 在整型变量中存储浮点值时,小数将被截断(丢弃、截断、不考虑)。即使按照步骤1中的建议配置,并返回2.5,值2将是存储在z.通过声明来解决这个值z作为浮点数。

例子问题2:标准数据结构

考虑下面的代码:

Int I = 55, j = 3;

system . out。Println ((i / j + 3) / 5);

上面代码的输出是什么?

可能的答案:

代码中有一个错误。

正确答案:

解释

小心!这是整数除法。因此,对于每一个除法,你将失去小数点后的位置。因此:

I / j等于,但它变成了

然后,你会有.再一次,小数点不见了,得到作为你的结果。

例子问题1:Int

下列哪个选项保证你的除法不丢失小数部分?

可能的答案:

Double d = (Double)(55/3);

没有一个答案是正确的。

Double d = 55 / 3;

Double d = (Double)((int)55 / (int) 3);

双d = 1.0 * 55 / 3;

正确答案:

双d = 1.0 * 55 / 3;

解释

记住这一点,只要一个元素的乘法/除法的集合是一个浮点值,整个东西将是一个浮点值。因此,正确答案是:

双d = 1.0 * 55 / 3;

你需要计算右边的值

1.0 * 55将变成55.0。这将以除法中的double结束,并将该值存储在d中。

注意,下面的方法不起作用:

Double d = (Double)(55 / 3);

这段代码将首先执行整数除法55 / 3。这将解决到18。只有这样,才会发生双重强制转换。这将给你18.0,但不是18.33333…

例子问题3:Int

考虑下面的代码:

Int I = 100;

双d = 4.55, d2 = 3.75;

Int = (Int)(d * 100 + d2);

价值是什么j在代码执行的最后?

可能的答案:

458

399

459

403

411

正确答案:

458

解释

不要想太多。从表达式求值开始:

D * 100 + d2

这和:

现在,这个值被转换为一个整数:

(int) (458.75)

请记住,当您从一个双精度值输入一个整数时,您将完全删除小数点后的位置。你不能四舍五入。你只需要截断它。因此,答案是458。

问题52:计算机科学

考虑下面的代码:

Int I = 3;

For (int j = 5;J > 0;j () {

I += I;

的值是多少在循环的最后?

可能的答案:

243

729

48

96

24

正确答案:

96

解释

问题中的循环执行forj取值范围为5到1。因此,您将执行5次。对于每个循环,那么你将有:

I = 3 + 3 = 6

I = 6 + 6 = 12

I = 12 + 12 = 24

I = 24 + 24 = 48

I = 48 + 48 = 96

最后一个值是你的答案!

例子问题1:标准数据结构

考虑下面的代码:

Int I = 5, p = 27;

For (int l = 23;L < p;l + +) {

I *= (l - 22);

价值是什么在上面代码的末尾?

可能的答案:

75

0

5

120

150

正确答案:

120

解释

您总是可以手动跟踪代码中的循环。你知道它会从L = 23L = 26.回想一下,* =可以重写为:

I = I * (l - 22)

现在,让我们考虑第一个循环。为此,我们将有:

I = 5 * (23 - 22) = 5 * 1

现在,让我们计算一下对于从23到26的每个循环:

23: 5

24:5 * (24 - 22) = 5 * 2 = 10

25: 10 * (25 - 22) = 10 * 3 = 30

26:30 * (26 - 22) = 30 * 4 = 120

例子问题1:基本数据类型

考虑下面的代码:

Int val = 205;

For (int I = 0;I < 5;我+ +){

Val /= 2;

在执行结束时,变量的值是多少瓦尔在上面的代码中?

可能的答案:

6

6.40625

12

25

5.90225

正确答案:

6

解释

回想一下运算符/ =可以重写为:

Val = Val / 2;

现在,还记得整数除法去掉了小数部分总是.因此,这个程序将循环5次,做除法瓦尔每次加2。这会给你:

例子问题1:标准数据结构

下列哪个变量赋值语句不是有效的赋值语句?

A. 15 = x - 15;

B. num = x * y;

C. x = y + 15

d x + y = 15

可能的答案:

b, c

,维

d、c

一个

d

正确答案:

,维

解释

A. 15 = x - 15;

不能将值赋给整数,因为整数不是变量,不存储信息。

d x + y = 15

此语句没有将值赋给单个整数,因此,它不是有效的变量赋值。

例子问题1:基本数据类型

我们如何设置一个方法来返回一个Int在Swift(iOS)?

可能的答案:

func() -> Int{}

方法- - - > Int {}

func方法()-> Int {}

函数方法- > Int {}

正确答案:

func方法()-> Int {}

解释

在Swift中,所有的方法都必须首先说明它们是什么。它们是函数,所以前缀是函数。其次,方法必须有名称。在这种情况下,我们给它命名方法.所有方法都需要指定参数,即使没有参数。所以,方法()即没有参数。最后,我们想返回一个Int型。我们设置返回类型为using- > Int。

例子问题1:基本数据类型

我们如何设置一个方法来返回一个Int在Swift(iOS)?

可能的答案:

func() -> Int{}

方法- - - > Int {}

func方法()-> Int {}

函数方法- > Int {}

正确答案:

func方法()-> Int {}

解释

在Swift中,所有的方法都必须首先说明它们是什么。它们是函数,所以前缀是函数。其次,方法必须有名称。在这种情况下,我们给它命名方法.所有方法都需要指定参数,即使没有参数。所以,方法()即没有参数。最后,我们想返回一个Int型。我们设置返回类型为using- > Int。

←之前 1 3. 4 5 6 7 8 9 10 11
大学导师的学习工具