niusouti.com

下列程序的执行结果是【 】。 include int a; int sum_a(void) { a=a+5; return a; }下列程序的执行结果是【 】。include <iostream. h>int a;int sum_a(void){a=a+5;return a;}void main(void){a = a+sum_a();cout<<a<<endl;}

题目
下列程序的执行结果是【 】。 include int a; int sum_a(void) { a=a+5; return a; }

下列程序的执行结果是【 】。

include <iostream. h>

int a;

int sum_a(void)

{

a=a+5;

return a;

}

void main(void)

{

a = a+sum_a();

cout<<a<<endl;

}


相似考题
参考答案和解析
正确答案:10
10 解析:本题考查全局变量的使用。全局变量被系统默认初始化为0,故在执行a=a+sum _a();语句时,首先执行sum_a函数,将a的值改变为5,该函数的返回值也是5,故最后a的值被赋值为10。
更多“下列程序的执行结果是【 】。 include <iostream. h> int a; int sum_a(void) { a=a+5; return a; } ”相关问题
  • 第1题:

    有以下程序 include include int fun(int n) {int *

    有以下程序 #include <stdio.h> #include <stdlib.h> int fun(int n) {int *p; p=(int*)malloc(sizeof(int)); *p=n; return *p; } { int a; a=fun(10); printf("%d\n",a+fun(10)); } 程序的运行结果是______。

    A.0

    B.10

    C.20

    D.出错


    正确答案:C
    解析:malloc(sizeof(int))的作用是开辟一个长度为sizeof(int)存储空间,并通过强制类型转换(int*)将此存储空间的地址赋给了—个整型的指针变量p。然后执行语句“*p=n”,使得*p的值为10,并通过返回此值,在主函数中输出a+10的值,即输出20。

  • 第2题:

    下列程序的输出结果是()。includeint b=2;int func(int *a){b+=*a;return(b);}main(){i

    下列程序的输出结果是( )。 #include <stdio.h> int b=2; int func(int *a) { b+=*a;return(b);} main() { int a=2, res=2; res+=func(&a); printf("%d\n",res); }

    A.4

    B.6

    C.8

    D.10


    正确答案:B
    解析:对于函数体中的语句b+=*a;其中的“*”是指针运算符,*a就是main函数中变量a的值。

  • 第3题:

    以下程序执行后的输出结果是include.using namespace std;void try(int,int,int,int)

    以下程序执行后的输出结果是 #include<iostream>. using namespace std; void try(int,int,int,int); int main() { int x,y,z,r; x=1; y=2; try(x,y,z,r); cout<<r<<end1; return 0; } void try(int x,int y, int z,int r) { z = x+y; x = x*x; y = y*y; r = z+x+y; }

    A.18

    B.9

    C.10

    D.不确定


    正确答案:D
    解析:本题考核函数调用(参数的传递)。本题常见的错误解答是:把x=1,y=2代入到函数try中,逐步计算出r=8。最后得到r的输出值是8。以下是正确解答,根据程序逐步分析:程序中定义了一个名为try的void型函数,即函数try没有任何返回值。而try函数在main函数中是以一条独立语句的方式被调用的,且main函数最后输出变量r的值。但在main函数中,并没有对变量r赋值。在C++语言中,数据只能从实参单向传递给形参,称为按值传递。也就是说,当简单变量作为实参时,用户不能在函数中改变对应实参的值。所以虽然在函数try中,r的值为8,但它并不能传递给实参,当然最终的输出肯定是不确定的随机数了。

  • 第4题:

    下列程序的输出结果是【】 include using namespace std; int &get Var(int*pint) {

    下列程序的输出结果是【 】

    include<iostream>

    using namespace std;

    int &get Var(int*pint)

    {

    return *pint;

    }

    int main()

    {

    int a=10;

    getvar(&A) =20;

    cout<<a<<end1;

    return 0;

    }


    正确答案:20
    20 解析:本题考核引用的使用。题中函数getVar返回的为实参的引用,即将a的引用赋值为20,所以最后输出a的值为20。

  • 第5题:

    下列程序的输出结果是inClUdeiht b=2;int funC (int*a) { b+=*a;return(b);}void m

    下列程序的输出结果是 #inClUde<iostream.h> iht b=2; int funC (int*a) { b+=*a;return(b);} void main() { inta=2,res=2; res+=func(&a); cout<<res;}

    A.4

    B.6

    C.8

    D.10


    正确答案:B
    解析:在函数体语句中的b+=*a;的*是指针运算符(也称间接访问运算符),*a就是main函数中a的值。