参考答案和解析
正确答案:A
函数f()的功能是:定义一个临时的整型指针变量s,指向全局变量k,然后用k的值对s指向的内存地址进行赋值,结果当然是k的值不变;另外在调用函数f()过程中,虽然使用m的地址初始化s,但是s在f函数内部又被指向k的地址,所以s的后续操作对m没有任何影响,因此最后输出为3,5,答案为A选项。
更多“ 有以下程序程序运行后的输出结果是A.3,5B.5,5C.3,3D.5,3 ”相关问题
  • 第1题:

    有以下程序:

    i

    程序运行后的输出结果是( )。。,

    A.3,4

    B.4,1

    C.2,3

    D.1,2


    正确答案:C
    本题考查结构体数组的相关操作,dt为结构体数组,那么指针P指向了结构体数组的一个元素,所以P一>x为1,P一>Y为2,结果为2,3。选项C正确。

  • 第2题:

    有以下程序:

    程序运行后的输出结果是( )。

    A.3,5,

    B.3,6,

    C.3,7,

    D.0,3,


    正确答案:A
    static静态变量只在声明时初始化一次。因此,第一次调用函数f(k=O),此时n…nlk0,经过自增操作n=1,m=1,k=1,返回值为3,第二次调用函数f(k=1),此时n=1,k=1,m=0,经过白增操作,n=2,k=2,m=1,返回值为5。故最终结果为3,5。故答案为A选项。

  • 第3题:

    假定所有变量均已正确说明,以下程序段运行后的输出结果是 。 int a=3,b=5,c=7; if(a>b) a=b; c=a; if(c!=a) c=b; printf("%d,%d,%dn",a,b,c);

    A.3,5,7

    B.3,5,5

    C.3,5,3

    D.程序段有语法错


    34

  • 第4题:

    有以下程序:

    程序运行后的输出结果是( )。.

    A.3,3

    B.1,1

    C.2,3

    D.1,2


    正确答案:D
    该题目中首先区别++n和n++,第一次调用f函数时,将++n(n自增l后再参与运算)作为参数进行传递,此时变量m的值为1,执行n+=m;后,n=1,将l返回主函数,并输出。第二次调用f函数时,将n++(n参与运算后再自增1)作为参数进行传递,此时变量m的值为1,执行语句n+=m;,由于n是静态存储变量,因此n=2,将2返回主函数并输出。因此D选项正确。

  • 第5题:

    有以下程序:

    程序运行后的输出结果是( )。

    A.3,5

    B.5,3

    C.35,35

    D.8,8


    正确答案:B
    运算符为按位异或运算符,即0^1=1,1‘0=1,1^1=0,∞=0;经计算可得X=x^y,Y=x^y,X=x^y,作用是交换x,Y的值。因此答案为B选项。