《程序设计基础(C语言)》练习题(2)

这篇文章是一份关于C语言的多项选择题和判断题测试,涵盖了函数调用、变量作用域、常量、数组、指针、预处理指令、循环和条件语句等多个基础概念。题目包括了对函数参数个数的判断,C语言源程序文件的后缀,变量作用域的范围,立方运算的表达式,以及break和continue语句的使用等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一. 单选题(共30 题,60.0分)

  1. (单选题,2.0分)若函数调用语句为f(a,b,f(a+b,a-b,b));,则函数f的参数个数是( )。
    A. 1
    B. 2
    C. 3
    D. 4
    我的答案:C 正确答案: C
    答案解析:
    2.0分
  2. (单选题,2.0分)C语言源程序名的后缀是( )。
    A. .C
    B. .cpp
    C. .obj
    D. .exe
    我的答案:A 正确答案: A
    答案解析:
    2.0分
  3. (单选题,2.0分)在一个函数的形参表列中定义的变量,其作用域为( )。
    A. 所在文件的全部范围
    B. 所在程序的全部范围
    C. 所在函数的全部范围
    D. 所在模块的全部范围
    我的答案:C 正确答案: C
    答案解析:
    2.0分
  4. (单选题,2.0分)C语言中计算a的立方正确的表达式是( )。
    A. pow(a,3)
    B. power(a,3)
    C. a^3
    D. a**3
    我的答案:B 正确答案: A
    答案解析:
    0.0分
  5. (单选题,2.0分)表达式 10==9的值是( )。
    A. TRUE
    B. 非零值
    C. 0
    D. 1
    我的答案:C 正确答案: C
    答案解析:
    2.0分
  6. (单选题,2.0分)若函数能被其它编译单位引用,那么函数定义时的存储类型应选用( )。
    A. auto
    B. extern
    C. static
    D. register
    我的答案:B 正确答案: B
    答案解析:
    2.0分
  7. (单选题,2.0分)在C语言中,函数返回值的类型最终取决于( )。
    A. return语句中表达式值的类型
    B. 函数定义时在函数首部所说明的函数类型
    C. 函数定义时形参的类型
    D. 调用函数时主调函数所传递的实参类型
    我的答案:A 正确答案: B
    答案解析:
    0.0分
  8. (单选题,2.0分)以下选项中可作为C语言合法常量的是( )。
    A. -80.0e
    B. -080
    C. -80
    D. -8e1.0
    我的答案:C 正确答案: C
    答案解析:
    2.0分
  9. (单选题,2.0分)若fp已正确定义并指向某个文件,当未遇到该文件结束标志时函数feof(fp)的值为
    A. 0
    B. 1
    C. -1
    D. 一个非0值
    我的答案:A 正确答案: A
    答案解析:
    2.0分
  10. (单选题,2.0分)设有如下说明 typedef struct ST { long a; int b; char c[2];} NEW; 则下面叙述中正确的是( )。
    A. 以上的说明形式非法
    B. NEW是一个结构体类型
    C. ST是一个结构体类型
    D. NEW是一个结构体变量
    我的答案:B 正确答案: B
    答案解析:
    2.0分
  11. (单选题,2.0分)以下数组定义中错误的是( )。
    A. int x[][3]={0};
    B. int x[2][3]={{1,2},{3,4},{5,6;
    C. int x[2][3]={1,2,3,4,5,6};
    D. int x[][3]={{1,2,3},{4,5,6;
    我的答案:B 正确答案: B
    答案解析:
    2.0分
  12. (单选题,2.0分)设int a[2][3]={{1},{2,3}};,则元素a[1][0]的值是( )。
    A. 0
    B. 1
    C. 2
    D. 3
    我的答案:B 正确答案: C
    答案解析:
    0.0分
  13. (单选题,2.0分)若局部变量与复合语句中的变量同名,则( )。
    A. 允许
    B. 变量作用域不确定
    C. 视为同一个变量
    D. 全局变量优先
    我的答案:A 正确答案: A
    答案解析:
    2.0分
  14. (单选题,2.0分)已有定义:int i,a[10],*p;,则合法的赋值语句是( )。
    A. p=100;
    B. p=a[2]+2;
    C. p=a[5];
    D. p=a+2;
    我的答案:D 正确答案: D
    答案解析:
    2.0分
  15. (单选题,2.0分)在C语言程序中,主函数的摆放位置( )。
    A. 必须置于所有函数之尾
    B. 任意
    C. 必须置于所有函数之首
    D. 不得置于所有函数之尾
    我的答案:B 正确答案: B
    答案解析:
    2.0分
  16. (单选题,2.0分)已知:char c=‘A’; 则printf(“%c”,c+32); 的输出结果是( )。
    A. a
    B. y
    C. Z
    D. c-32
    我的答案:A 正确答案: A
    答案解析:
    2.0分
  17. (单选题,2.0分)设宏定义#define PI 3.1415926,用宏名PI替换的是( )。
    A. 字符串
    B. 算术表达式
    C. 单精度实型数
    D. 双精度实型数
    我的答案:C 正确答案: A
    答案解析:
    0.0分
  18. (单选题,2.0分)对于while语句,错误的说法是( )。
    A. 循环体中可以包含若干条语句
    B. 循环体有可能一次也不执行
    C. 循环体至少要执行一次
    D. 用条件控制循环体的执行次数
    我的答案:C 正确答案: C
    答案解析:
    2.0分
  19. (单选题,2.0分)读取二进制文件的函数调用形式为:fread(buffer,size,count,fp);,其中buffer代表的是( )。
    A. 一个文件指针,指向待读取的文件
    B. 一个整型变量,代表待读取的数据的字节数
    C. 一个内存块的字节数
    D. 一个内存块的首地址,代表读入数据存放的地址
    我的答案:D 正确答案: D
    答案解析:
    2.0分
  20. (单选题,2.0分)以下属于C语言保留字的是( )。
    A. get
    B. fopen
    C. unsigned
    D. include
    我的答案:C 正确答案: C
    答案解析:
    2.0分
  21. (单选题,2.0分)在一个C源程序文件中所定义的全局变量,其作用域为( )。
    A. 所在函数的全部范围
    B. 所在程序的全部范围
    C. 由具体定义位置和extern说明来决定范围
    D. 所在文件的全部范围
    我的答案:B 正确答案: C
    答案解析:
    0.0分
  22. (单选题,2.0分)设int a[10];则对a数组元素的错误引用是( )。
    A. *(a+1)
    B. a(5)
    C. a[5]
    D. a[10-10]
    我的答案:B 正确答案: B
    答案解析:
    2.0分
  23. (单选题,2.0分)在循环体中用来强制退出循环的语句是( )。
    A. return
    B. continue
    C. exit
    D. break
    我的答案:D 正确答案: D
    答案解析:
    2.0分
  24. (单选题,2.0分)C语言中,正确的一组用户标识符是( )。
    A. as_b3,_123
    B. 2c,do
    C. void,define
    D. for,-abc
    我的答案:A 正确答案: A
    答案解析:
    2.0分
  25. (单选题,2.0分)C语言中的sizeof是( )。
    A. 类型名
    B. 变量名
    C. 函数名
    D. 运算符
    我的答案:A 正确答案: D
    答案解析:
    0.0分
  26. (单选题,2.0分)下列选项中正确的语句组是( )。
    A. char *s; s=“Beijing”;
    B. char s[8]; s={“Beijing”};
    C. char s[8]; s=“Beijing”;
    D. char *s; s={“Beijing”};
    我的答案:C 正确答案: A
    答案解析:
    0.0分
  27. (单选题,2.0分)下列定义枚举类型变量,正确的是( )。
    A. enum t{a,b}x;
    B. enum t{1,2}x;
    C. anum {′+′,′-′}x;
    D. anum t={a,b}x;
    我的答案:A 正确答案: A
    答案解析:
    2.0分
  28. (单选题,2.0分)设int b[ ][5]={1,2,3,4,5,6,7};,则元素b[1][2]的值是( )。
    A. 0
    B. 2
    C. 6
    D. 7
    我的答案:B 正确答案: A
    答案解析:
    0.0分
  29. (单选题,2.0分)下列叙述中正确的是( )。
    A. break语句只能用于switch语句
    B. 在switch语句中必须使用default
    C. break语句必须与switch语句中的case配对使用
    D. 在switch语句中,不一定使用break语句
    我的答案:D 正确答案: D
    答案解析:
    2.0分
  30. (单选题,2.0分)已定义c为字符型变量,则下列语句中正确的是( )。
    A. c=“a”;
    B. c=“97”;
    C. c=‘97’;
    D. c=97;
    我的答案:D 正确答案: D
    答案解析:
    2.0分
    二. 多选题(共10 题,20.0分)
  31. (多选题,2.0分)下列属于条件编译的命令是( )。
    A. #endif
    B. #else
    C. #define N 25
    D. #include “stdio.h”
    我的答案:AB 正确答案: AB
    答案解析:
    2.0分
  32. (多选题,2.0分)以下选项中,值为1的表达式是( )。
    A. 1 - ‘\0’
    B. ‘1’ - ‘0’
    C. ‘\0’ - ‘0’
    D. 1 –‘0’
    我的答案:AD 正确答案: AB
    答案解析:
    0.0分
  33. (多选题,2.0分)以下的叙述正确的有( )。
    A. 表达式3&&5的值是false
    B. 若对一个非空文本文件进行读取,则在fopen中的“使用方式”应是r
    C. 设int a[]={1,2,3,4,5,6,7,8,9,10},p=a+5; 则p的值是6
    D. 设int a=3,则表达式a<<2的值是12
    我的答案:BC 正确答案: BCD
    答案解析:
    1.0分
  34. (多选题,2.0分)可以输出字符’A’的语句有( )。
    A. printf(“%c”,65);
    B. putchar(65);
    C. putchar(‘A’);
    D. printf(“%d”,‘A’);
    我的答案:CD 正确答案: ABC
    答案解析:
    0.0分
  35. (多选题,2.0分)以下叙述中正确的是( )。
    A. 预处理命令行都以“#”开头
    B. 预处理可以实现宏定义和条件编译的功能
    C. 预处理命令行必须位于C源程序的起始位置
    D. 每个C程序必须在开头包含预处理命令行:#include
    我的答案:BC 正确答案: AB
    答案解析:
    0.0分
  36. (多选题,2.0分)以下说法中正确的是( )。
    A. default必须和switch配合
    B. break必须和for配合
    C. else必须和if配合
    D. continue必须和while配合
    我的答案:CD 正确答案: AC
    答案解析:
    0.0分
  37. (多选题,2.0分)C语言中的数据文件包括( )。
    A. 目标文件
    B. 可执行文件
    C. 文本文件
    D. 二进制文件
    我的答案:ABC 正确答案: CD
    答案解析:
    0.0分
  38. (多选题,2.0分)跳出整个循环可以使用的语句有( )。
    A. goto
    B. break
    C. continue
    D. case
    我的答案:AB 正确答案: AB
    答案解析:
    2.0分
  39. (多选题,2.0分)以下叙述中,错误的是( )。
    A. 函数的递归调用是指系统函数调用主函数
    B. 构成一个程序的是一个主函数和最多一个非主函数
    C. typedef只是将已存在的类型用一个新的名字来代表
    D. 结构体类型的变量占用内存的字节数是第一个成员占用的内存字节数
    我的答案:CD 正确答案: ABD
    0.0分
  40. (多选题,2.0分)配合起来构成分支语句的有( )。
    A. switch
    B. default
    C. case
    D. return
    我的答案:ABC 正确答案: ABC
    答案解析:
    2.0分
    三. 判断题(共20 题,20.0分)
  41. (判断题,1.0分)连接符不能出现在标识符中。
    A. 对
    B. 错
    我的答案: 错 正确答案: 对
    答案解析:
    0.0分
  42. (判断题,1.0分)在算术运算符中,只能在两个整数之间进行的是除法。
    A. 对
    B. 错
    我的答案: 错 正确答案: 错
    答案解析:
    1.0分
  43. (判断题,1.0分)调用系统函数strcpy时,应使用的文件包含命令是#include “math.h”。
    A. 对
    B. 错
    我的答案: 对 正确答案: 错
    答案解析:
    0.0分
  44. (判断题,1.0分)\0101’和’\x41’都可以表示字母A。
    A. 对
    B. 错
    我的答案: 对 正确答案: 对
    答案解析:
    1.0分
  45. (判断题,1.0分)break语句只能用在循环体内和switch语句体内。
    A. 对
    B. 错
    我的答案: 错 正确答案: 对
    答案解析:
    0.0分
  46. (判断题,1.0分)do-while循环语句的循环体至少执行一次。
    A. 对
    B. 错
    我的答案: 错 正确答案: 对
    答案解析:
    0.0分
  47. (判断题,1.0分)do-while语句循环体至少要执行一次。
    A. 对
    B. 错
    我的答案: 错 正确答案: 对
    答案解析:
    0.0分
  48. (判断题,1.0分)结构化程序由顺序、分支、循环三种基本结构组成。
    A. 对
    B. 错
    我的答案: 对 正确答案: 对
    答案解析:
    1.0分
  49. (判断题,1.0分)每个函数都可以被单独编译。
    A. 对
    B. 错
    我的答案: 错 正确答案: 对
    答案解析:
    0.0分
  50. (判断题,1.0分)C语言是一种结构化程序设计语言。
    A. 对
    B. 错
    我的答案: 对 正确答案: 对
    答案解析:
    1.0分
  51. (判断题,1.0分)C程序中,j++;是赋值语句。
    A. 对
    B. 错
    我的答案: 对 正确答案: 对
    答案解析:
    1.0分
  52. (判断题,1.0分)一个程序中可以出现一个以上的主函数。
    A. 对
    B. 错
    我的答案: 对 正确答案: 错
    答案解析:
    0.0分
  53. (判断题,1.0分)C语言程序的基本组成单位是函数。
    A. 对
    B. 错
    我的答案: 对 正确答案: 对
    答案解析:
    1.0分
  54. (判断题,1.0分)在执行循环结构时,能够立即退出该结构的语句是break 。
    A. 对
    B. 错
    我的答案: 对 正确答案: 对
    答案解析:
    1.0分
  55. (判断题,1.0分)若函数调用时的实参为变量时,函数的形参和实参分别占用不同的存储单元。
    A. 对
    B. 错
    我的答案: 对 正确答案: 对
    答案解析:
    1.0分
  56. (判断题,1.0分)使用putchar函数时, 必须在之前包含头文件stdio.h。
    A. 对
    B. 错
    我的答案: 对 正确答案: 对
    答案解析:
    1.0分
  57. (判断题,1.0分)在执行switch结构时,能够立即退出该结构的语句是continue。
    A. 对
    B. 错
    我的答案: 错 正确答案: 错
    答案解析:
    1.0分
  58. (判断题,1.0分)数组名作为函数调用时的实参,则实际上传递给形参的是数组元素的个数。
    A. 对
    B. 错
    我的答案: 对 正确答案: 错
    答案解析:
    0.0分
  59. (判断题,1.0分)C程序中的变量,必须先定义声明,才能使用。
    A. 对
    B. 错
    我的答案: 对 正确答案: 对
    答案解析:
    1.0分
  60. (判断题,1.0分)在某文件中,若全局变量与局部变量同名,则变量作用域不确定。
    A. 对
    B. 错
    我的答案: 错 正确答案: 错
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值