itgle.com

在下面的程序代码中,a是整型全局变量,b是整型局部变量,x是整数形参,若调用 com()时以引用调用的方式传递信息,则输出结果为(1);若调用com()进以传值的方式传递信息,则输出结果为(2)。A.8B.12C.14D.16

题目

在下面的程序代码中,a是整型全局变量,b是整型局部变量,x是整数形参,若调用 com()时以引用调用的方式传递信息,则输出结果为(1);若调用com()进以传值的方式传递信息,则输出结果为(2)。

A.8

B.12

C.14

D.16


相似考题
参考答案和解析
正确答案:D
更多“ 在下面的程序代码中,a是整型全局变量,b是整型局部变量,x是整数形参,若调用 com()时以引用调用的方式传递信息,则输出结果为(1);若调用com()进以传值的方式传递信息,则输出结果为(2)。A.8B.12C”相关问题
  • 第1题:

    ●在下面的程序中,若实参a与形参x以引用调用(call by reference)的方式传递信息,实参b与形参y以值调用(call by value)的方式传递信息。则a的输出结果为 (53) ,b的输出结果为 (54) 。

    (53) A.1

    B.3

    C.4

    D.5

    (54) A.2

    B.4

    C.8

    D.12


    正确答案:D,A
    【解析】实际上,引用调用时,实参向形参传递的参数的地址,因此在子程序可以修改实参变量的值。相反,值调用时,子程序将不修改实参变量的值。子程序compute()的执行语句对x的修改结果就是a的值,即x=1+2*2=5。y值的修改不影响b的值,因此b=2。

  • 第2题:

    在下面的程序中,若实参a与形参x以引用调用(Call by Reference)的方式传递信息,则输出结果为(51);若实参a与形参x以值调用(Call by Value)的方式传递信息,那么输出结果为(52)。

    A.1

    B.2

    C.3

    D.4


    正确答案:D
    解析:对于引用调用,不但传递实参的值,同时也传递实参的地址,函数执行过程中对形参的修改也反映到实参上,所以a的结果是4。值调用不传递实参的地址,对形参的修改不会反映到实参上,所以(52)题中a的值为2。

  • 第3题:

    在下列程序中,调用f1(x)时,实参a与形参x以引用调用的方式传递信息,其输出结果为(33),调用f2(y)时,实参b与形参y以传值的方式传递信息,其输出结果为(34)。

    (63)

    A.1

    B.2

    C.3

    D.4


    正确答案:D

  • 第4题:

    在下面的程序中,若实参a与形参x以引用调用(call by reference)的方式传递信息,则输出结果为(1);若实参a与形参x以值调用(call by value)的方式传递信息,那么输出结果为(2)。

    Main program Procedure addone(x)

    a:=1; a:=x+1;

    addone(a); x:=x+2;

    write(a); return;

    A.1

    B.2

    C.3

    D.4


    正确答案:D
    解析:所有函数的定义都是独立的、平行的。在一个函数定义中不允许定义另外一个函数,但可以对别的函数进行调用或做引用说明;它也可以对自身进行调用,即递归调用。函数原型的形式如下:
      函数 函数名(形参表);
      形参表中的形参名可以省略。函数原型提供了更强的函数检查功能,在编译阶段就能发现函数的返回值的类型以及参数个数和类型是否正确。
      传值调用是指把实形参数的值传递给相应的形式参数,子程序不能通过这种方式传回任何结果。
      引用调用是指把实形参数的地址传递给相应的形式参数,此时子程序对形式参数的一次引用或赋值都是对形式参数的间接访问。
      实参a与形参x以引用调用的方式传递信息,那么,addone(a)则会通过语句“a:= x+1;”和“x:=x+2;”改变a的值。因此,变量a的值变为4。
      实参a与形参x以传值调用的方式传递信息,则a的值保持不变。
      这里需要说明的是,变量a没有进行声明而在“Main program”和“addone”中进行引用,在这里应当视为全局变量。

  • 第5题:

    在下面的程序中,若实参a与形参x以引用调用(call by reference)的方式传递信息,实参b与形参Y以值调用(call by value)的方式传递信息。则a的输出结果为(53),b的输出结果为(54)。

    A.1

    B.3

    C.4

    D.5


    正确答案:D