更多“ 有以下程序:i程序运行后的输出结果是( )。。,A.3,4B.4,1C.2,3D.1,2 ”相关问题
  • 第1题:

    有以下程序

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

    A.1,2

    B.1,1

    C.2,1

    D.2,2


    正确答案:A
    fun(++n)返回值为l,fun(n++)因为fun函数内n为static类型,仍保持原值1,函数返回值为2,所以答案选择A)。

  • 第2题:

    有以下程序:

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

    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选项正确。

  • 第3题:

    有以下程序

    #include<stdio.h>

    #include<stdlib.h>

    main( )

    {int*a,*b,*c;

    a=b=c=(int*)malloc(sizeof(int));

    *a=1;*b=2,*c=3;

    a=b

    printf(”%d,%d,%d\n”,*a,*b,*c);

    }

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

    A.3,3,3

    B.2,2,3

    C.1,2,3

    D.1,1,3


    正确答案:A
    解析:本题中,首先创建开辟一个动态内存,然后将地址分别存入指针a、b、c中,即a、b、c都指向相同的变量。分别给a、b、C所指的变量赋值,最终a、b、c所指的变量中的值为3,最后打印a、b、c所指的变量的值,即3,3,3。所以选A。

  • 第4题:

    有以下程序:程序运行后的输出结果是( )。

    A.7,4

    B.4,10

    C.8,8

    D.10,10


    正确答案:B
    slrlen用来返回字符串的长度,而sizeof返回的是一个对象或者类型所占的内存字节数,即数组所占的内存。

  • 第5题:

    有以下程序

    程序运行后输出结果是

    A.0,2

    B.0,3

    C.1,3

    D.1,2


    正确答案:D
    本题重点考查while语句,变量a和b分别赋初值为-2和1,while语句的语义是:计算表达式的值,当值为真(非O)时,执行循环体语句。a++即a参与运算后,a的值再自增1。++b即b自增1后再参与其它运算。当表达式的值为0时,退出循环,最后输出a和b的值为1和2。因此D选项正确。