一起答

2017年福建省二级C语言真题试卷(1)

如果您发现本试卷没有包含本套题的全部小题,请尝试在页面顶部本站内搜索框搜索相关题目,一般都能找到。
  1. 下面程序运行后,屏幕显示File open error!,则可能的原因是()。

    • A.当前工作目录下没有test.txt文件
    • B.函数fopen()的参数是错误的
    • C.当前工作目录下的test.txt文件是空文件
    • D.text.txt文件已经打开
  2. 以下程序段的运行结果是()。

    • A.abc\0ef
    • B.abcef
    • C.abc
    • D.a
  3. 下列()对结构类型变量定义是错误的。

    • A.
    • B.
    • C.
    • D.
  4. 以下程序段运行后,()对数组a元素的引用是错误的。(其中0≤i<4,0≤j<3)

    • A.*(*(a+i)+j)
    • B.*(*(p+i)+j)
    • C.p[i][j]
    • D.*(p[i]+j)
  5. 以下程序段运行后x的值为()。

    • A.1
    • B.120
    • C.24
    • D.6
  6. 以下程序段的运行结果是()。

    • A.24
    • B.44
    • C.45
    • D.25
  7. 若有定义:intarr[15],n=5;无法正确引用arr数组元素的是()。

    • A.arr[10+n]
    • B.arr[0]
    • C.arr[15-n]
    • D.arr[n]
  8. 若有定义:则()对下列语句是否符合语法规则的判断是正确的。

    • A.语句1、2、3均正确
    • B.语句2正确,语句1和语句3错误
    • C.语句1错误,语句2和语句3正确
    • D.语句1、2、3均错误
  9. 以下程序段运行后s的值是()。

    • A.12
    • B.14
    • C.13
    • D.15
  10. 若有定义:floatx=2,y;inta=3;语句y=1*(x+A./3;运行后,y的值为()。

    • A.2.0
    • B.1.0
    • C.0
    • D.1.666667
  11. 以下叙述错误的是()。

    • A.算术运算符中不包含“=”运算符
    • B.模运算符“%”是c语言基本的算术运算符
    • C.算术运算符中只有“*”、“/”优先级高于关系运算符
    • D.自加和自减运算符只能用于变量,而不能用于常量或表达式
  12. 为正确的用户标识符()。

    • A.union
    • B.3_row
    • C.max_at
    • D.min-5
  13. 若有定义:intb=-15;,则()为正确的赋值表达式。

    • A.b=*5
    • B.*b=6
    • C.b+=b*3
    • D.b+10=-5
  14. 以下程序的运行结果是()。

    • A.1
    • B.&a[0]
    • C.3
    • D.num
  15. 下面程序运行后,屏幕显示write ok!,则下面叙述正确的是()。

    • A.当前工作目录下找不到data.txt文件
    • B.当前工作目录的data.txt文件已经打开
    • C.当前工作目录的data.txt文件已经关闭
    • D.当前工作目录下存在data.txt文件,其中的内容是”write ok!”
  16. 若有定义inta=1,b=2,t=3;则变量d1的长度是()。

    • A.4
    • B.17
    • C.12
    • D.15
  17. 以下程序的运行结果是()。

    • A.45,23
    • B.45,45
    • C.23,45
    • D.23,23
  18. 下面叙述错误的是()。

    • A.一个指针变量只能指向同一类型的变量
    • B.一个变量的地址称为该变量的指针
    • C.可以将一个整数值赋给指针变量
    • D.任何指针变量都可以与空指针NULL进行比较
  19. 下面叙述错误的是()。

    • A.c源程序必须包含一个main()函数
    • B.c源程序可由一个或多个函数组成
    • C.一个c源程序的执行是从main()函数开始,直到main()函数结束
    • D.注释说明部分只能位于c源程序的最前面
  20. 以下程序段运行后x的值为()。

    • A.8
    • B.14
    • C.10
    • D.12
  21. 若有定义:floatx=3.5,y=3.6;则表达式()的值为6。

    • A.(int)x+(int)y
    • B.x+y
    • C.(int)(x+y)
    • D.int(x+y)
  22. 以下程序运行后输出结果是()。

    • A.9
    • B.6
    • C.8
    • D.5
  23. 以下程序段的运行结果是()。

    • A.4
    • B.3
    • C.5
    • D.1
  24. getchar()函数的功能是获取终端输入的()。

    • A.一个实型变量值
    • B.一个字符
    • C.多个字符
    • D.一个整型变量表达式
  25. 若有定义:inta;,则表达式()不能用来判断a值为奇数是“真”,偶数是“假”。

    • A.a%2==1
    • B.!(a%2)
    • C.a%2
    • D.!(a%2==0)
  26. 若有定义:inta=3;,语句a+=a-=a*a;运行后a的值为()。

    • A.-3
    • B.-6
    • C.-12
    • D.0
  27. 若有定义:inti=3,j=6;,则表达式(--i)*(j++)的值为()。

    • A.12
    • B.10
    • C.18
    • D.15
  28. 若当前工作目录下有一文本文件test.txt,其内容为"cprogram“(不包含引号),则以下程序段的运行结果是()。

    • A.cpro
    • B.cprog
    • C.ogram
    • D.gram
  29. 若有定义:则()语句是正确的。

    • A.n[0]=2;
    • B.NUM=2;
    • C.NUM=n;
    • D.n=2;
  30. 为非法的字符串常量()。

    • A.“case”
    • B.““
    • C.”056”
    • D.,123?
  31. 下列程序段运行后,表达式()的值为3。

    • A.p[1].x
    • B.*(p+2)
    • C.p[3].x
    • D.p[2].x
  32. 若有定义:则下面叙述错误的是()。

    • A.teacher 1是结构类型名
    • B.struct teacher是用户定义的结构类型
    • C.num、sex、age都是结构变量teacher1的成员
    • D.struct是结构类型的关键字
  33. 若有定义:int*p1,*p2;,则不能用于指针变量p1、p2之间的运算符是()。

    • A.-
    • B.=
    • C.+
    • D.==
  34. 以下程序段的运行结果是()。

    • A.104
    • B.012
    • C.123
    • D.215
  35. 若有定义:#define PI 3,则表达式PI*2*2的值为()。

    • A.4
    • B.不确定
    • C.12
    • D.322
  36. 是正确的数组定义()。

    • A.intn=5;intarr[n];
    • B.intn;n=5;intarr[n];
    • C.intarr[10];
    • D.intN=5,arr[N];
  37. 以下程序段运行后a的值为()。

    int a=2;

    • a=strcmp(“miss”,”miss”);
    • A.true
    • B.0
    • C.1
    • D.-1
  38. 是关于C语言数据类型的正确叙述()。

    • A.枚举类型不是基本类型
    • B.变量使用前应定义相应的数据类型
    • C.不允许使用空类型
    • D.数组不是构造类型
  39. 以下程序段运行后x的值为()。

    • A.9
    • B.15
    • C.6
    • D.12
  40. 以下程序段运行后x的值为()。

    • A.6
    • B.4
    • C.5
    • D.3
  41. 若有定义:inta;且表达式!a的值为0,则表达式()的值为1。

    • A.!(a<0||a>0)
    • B.a!=0
    • C.a==0
    • D.a=0
  42. 下列运算符中优先级最低的是()。

    • A.>
    • B.*
    • C.=
    • D.!
  43. 若有定义inta=8,b=5;要实现输出形式为:8*5=40,正确的printf()函数调用语句是()。

    • A.printf(“a*b=a*b\n”)
    • B.printf(“a*b=%d\n”,a*B)
    • C.printf(“%d*%d=a*b\n”,a,B)
    • D.printf(“%d*%d=%d\n”,a,b,a*B)
  44. 若有定义:intx,y,z;语句x=(y=z=3,++y,z+=y);运行后x的值为()。

    • A.6
    • B.7
    • C.8
    • D.3
  45. C语言的基本数据类型包括()。

    • A.整型、实型、字符型
    • B.整型、指针型、字符型
    • C.整型、实型、逻辑型
    • D.整型、实型、空类型
  46. 语句符合C语言语法()。

    • A.inta=b=2,c=5;
    • B.floatx=3.2,inti,j=6;
    • C.floatx=2.3,b,c;
    • D.inta=2,b+=a;
  47. 下面叙述错误的是()。

    • A.C语言规定可逐个引用数组元素但不能一次引用整个数组
    • B.C语言数组名称是数组在内存中的首地址
    • C.数组中每一个元素都属于同一个数据类型
    • D.C语言数组长度在定义数组时刻不作确定
  48. 若有定义:inta=2,*p=&a;,则以下()均表示地址。

    • A.&a,p
    • B.a,p
    • C.a,*p
    • D.&a,*p
  49. 下面叙述错误的是()。

    • A.“#define PRICE 30”命令的作用是定义一个与30等价的符号常量PRICE
    • B.C源程序中加入一些预处理命令是为了改进程序设计环境,提高编程效率
    • C.“#include”命令的作用是在预处理时将stdio.h文件中的实际内容代替该命令
    • D.宏定义也是C语句,必须在行末加分号
  50. 下面叙述正确的是()。

    • A.main()函数必须位于源程序文件的开头
    • B.程序中必需含有自定义函数
    • C.每行最多只能写两条语句
    • D.所有语句都必须以分号“;”结束