第七章单元测试
  1. 凡是函数中未指定存储类别的局部变量,其隐含的存储类别是____。


  2. A:static B:register C:extern D:auto
    答案:auto
  3. 下列程序的输出结果是( )。 


    # include <stdio.h>

    int f(int n)

    {  static int k, s;


    n--;

    for(k=n; k>0; k--)

    s += k;  

    return s;

    }

    int main(void)

    {  int k;


    k=f(3);

    printf("(%d,%d)", k, f(k));


    return 0;

    }



  4. A:(3,6) B:(6,6) C:(6,12) D:(3,3)
  5. 在一个C源程序文件中,若要定义一个只允许本源文件中所有函数使用的全局变量,则该变量需要使用的存储类别是(  )。


  6. A:

    register

    B:

    static

    C:

    extern

    D:

    auto

  7. 以下程序的输出结果是(  )。
    #define MAX(x,y) (x)>(y)?(x):(y)
    main()
    {
    int a=5,b=2,c=3,d=3,t;
    t=MAX(a+b,c+d)*10;
    printf('%d',t);
    }


  8. A:

    7

    B:

    70

    C:

    6

    D:

    60

  9. 变量的有效范围与其定义的位置有关,(  )的作用域在整个源程序文件中都有效。


  10. A:

    在第一个函数中定义的变量

    B:

    在主函数中定义的变量

    C:

    在函数中定义的静态变量

    D:

    在定义第一个函数之前所定义的变量

  11. 以下关于编译预处理的叙述中错误的是(  )。


  12. A:

    预处理命令不是C语言本身的组成部分

    B:

    预处理命令行只能位于源程序中的所有语句之前

    C:

    一条有效的预处理命令必须单独占据一行

    D:

    预处理命令行必须以#开始

  13. 如果在一个函数中的复合语句中定义了一个变量,则该变量(  )。


  14. A:

    在该函数中有效

    B:

    只在该复合语句中有效

    C:

    在本程序范围内有效

    D:

    为非法变量

  15. 进行宏定义时,宏名必须使用大写字母表示。


  16. A:对 B:错
  17. C语言中,在register寄存器中存储变量比在内存中存储变量运算速度快。


  18. A:错 B:对

温馨提示支付 ¥3.00 元后可查看付费内容,请先翻页预览!
点赞(1) dxwkbang
返回
顶部