常熟理工学院 c语言题库 联系客服

发布时间 : 星期三 文章常熟理工学院 c语言题库更新完毕开始阅读b8cd8722ab8271fe910ef12d2af90242a995ab43

下面选项中,不能用作C语言标识符的是( C )。

A._00 B.print C.&b D.FOR 下面合法的标识符是( A )。

A.IF B.-321 C.c f D.int

可以将高级语言编写的源程序转换为目标程序的软件是( D )。 A.汇编程序 B.解释程序 C.编辑程序 D.编译程序

C 语言程序中可以对程序进行注释,注释部分必须用符号( C )括起来。 A.“{”和“}” B.“[”和“]” C.“/*”和“*/” D.“*/”和“/*” 已有预处理命令“#include <>”和声明“int x=4, y;”,下面语句中语法正确的是( C )。 A.if(x%2=1)y=x; B.if(sqrt(x)%2)y=x; C.if(x==1)y=x; D.if(x==1)y=&x; 下列运算符中,优先级最低的是( D )。

A.* B.!= C.+ D.=

逻辑“异或”运算可描述为当且仅当a、b两个操作数中只有一个为真时才为真,其他情况下均为假。下面能够正确表示逻辑“异或”运算的表达式是( D ))。 A.a || b B.a && b

C.(a&&b)&&!(a || b) D.(a || b)&&!(a&&b)

下面关于continue和break语句的叙述中正确的是( B )。 A.continue和break语句都可以出现在switch语句中

B.continue和break语句都可以出现在循环语句的循环体中 C.在switch语句允许出现continue和break语句

D.执行循环语句中的continue和break语句都将立即终止循环 在while(e)语句中的e与下面条件表达式等价的是( D )。 A.e==0 B.e==1 C.e!=1 D.e!=0

已有函数fun的定义“void fun(void) {printf(\fun函数的正确形式是( B )。

A.fun; B.fun(); C.fun(void); D.fun(1); 设有下列程序段: static int y=2; void f2( )

{ static float d=3; …} int x=1; void f1( )

{ int z=3; …}

关于程序段中各变量的属性,下面叙述中错误的是( D )。 A.x是全局变量,函数f1可以访问,函数f2不能访问 B.y是全局变量,函数f1和函数f2都可以访问 C.z是动态变量,函数f1可访问,函数f2不可访问 D.d是静态变量,函数f1和函数f2都可以访问

已知某编译系统中singed int类型数据的长度是16位,该类型数据的最大值是( A )。 A.32767 B.32768 C.127 D.65535 设k=7,x=12,则下列表达式值为3的是( D )。 A.x%=(k%=5) B.x%=(k-k%5) C.x%=k-k%5 D.(x%=k)-(k%=5)

已有定义“int a[]={5,4,3,2,1},i=4;”,下列对a数组元素的引用中错误的是( B )。 A.a[--i] B.a[a[0]] C.a[2*2] D.a[a[i]]

己有声明“int a=0,b=l,*p,*q;”,下列正确的语句是( C )。 A.a=p; B.b=q; C.p=&a; D.p=&q; C语言中,结构体类型变量在程序执行期间( A )。

A.所有成员一直驻留在内存中 B.只有一个成员驻留在内存中 C.部分成员驻留在内存中 D.没有成员驻留在内存中

若有定义和声明typedef enum{green, red, yellow, blue, b1ack}color; color flower;,则下列语句中正确的是( B )。

A.green=red; B.flower=red; C.color=red; D.enum=red;

在文件包含预处理语句#include的使用形式中,当之后的文件名用双引号括起来时,寻找被包含文件的方式是( C )。 A.仅搜索当前目录

B.仅搜索源程序所在的目录

C.先在源程序所在目录搜索,再按系统设定的标准方式搜索 D.直接按系统设定的标准方式搜索目录

已有定义“int a[2][3]={0}; *p=a[0];”,下面表达式中有语法错误的是( A )。 A.a[0]=1 B.p[0]=1 C.*p=1 D.a[0][0]=1 下面关于C语言数据文件的叙述中正确的是( D )。

A.文件由ASCII码字符序列组成,C语言只能读写文本文件 B.文本由二进制数据序列组成,C语言只能读写二进制文件

C.文件由记录序列组成,可按数据的存放形式分为文本文件和二进制文件 D.文件由数据流序列组成,可按数据的存放形式分为文本文件和二进制文件 下面选项中,不能用作C语言标识符的是(C)。 A.FOR B._10 C.&h D.print 下面合法的标识符是(A)。

A.IF B.-412 C.a k D.char

C 语言源程序的三种基本结构是顺序结构、(B)结构和循环结构。 A.递归 B.选择 C.转移 D.嵌套

已有定义“float x=; int i;”,欲将x中的数值保留小数点后两位,第三位进行四舍五入运算,能实现该功能的表达式是(A)。 A.i=x*100+, x=i/ B.x=(x*100+/ C.x=((int)x*100+/ D.x=(x/100+/ 下面定义符号常量p为中正确的是(D)。

A.#define p ; B.#define p C.#define p= D.#define p 表达式 !x 等价于(A)。

A.x==0 B.x==1 C.x != 0 D.x!=1 下面关于if语句和switch语句的叙述中错误的是(D)。 A.if语句和switch语句都可以实现算法的选择结构 B.if语句和switch语句都能实现多路(两路以上)选择 C.if语句可以嵌套使用 D.switch语句不能嵌套使用

下面关于循环语句for、while、do_while的叙述中正确的是(A)。 A.三种循环语句都可能出现无穷循环

B.三种循环语句中都可以缺省循环终止条件表达式 C.三种循环语句的循环体都至少被无条件地执行一次 D.三种循环语句的循环体都必须放入一对花括号中 在C语言中while和do-while循环的主要区别是(C)。

A.while的循环控制条件比do-while的循环控制条件严格 B.do-while允许从外部转到循环体内 C.do-while的循环体至少无条件执行一次

D.do-while的循环体不能是复合语句

若已定义一个有返回值的函数,则下面关于调用该函数的叙述中错误的是(A)。 A.函数调用可以作为一个函数形参 B.函数调用可以出现在表达式中 C.函数调用可以作为一个函数实参 D.函数调用可以作为独立的语句存在 设有下列程序段: static int y=2; void f2( )

{ static float d=3; …} int x=1; void f1( )

{ int z=3; …}

关于程序段中各变量的属性,下面叙述中错误的是(D)。 A.x是全局变量,函数f1可以访问,函数f2不能访问 B.y是全局变量,函数f1和函数f2都可以访问 C.z是动态变量,函数f1可访问,函数f2不可访问 D.d是静态变量,函数f1和函数f2都可以访问 若有代数式

6xy,则不正确的C语言表达式是(C)。 bc A.x/b/c*y*6 B.6*x*y/b/c C.6*x*y/b*c D.x*y/c/b*6

已有定义“int i;float f;”,则下面正确的表达式是(D)。

A.(int f)%i B.int(f)%i C.int(f%i) D.(int)f%i

已有定义“int a[2][3]”,下面选项中(A)正确地引用了数组a中的基本元素。 A.a[1>2][!1] B.a[2][0] C.a[1] D.a

已有定义“int m=3, c, *a=&m, *b=&c;”,则下列语句中错误的是(C)。 A.a=b=0; B.a=&c, b=a; C.&a=&b; D.*b=*a 定义一个结构体变量时,系统分配给它的内存是(A)。 A.各成员所需内存总和

B.成员中所占内存最多的容量

C.结构中第一个成员所占内存的容量 D.结构中最后一个成员所占内存的容量

已有枚举类型定义“enum letter{E, F, G=7, H, I};”,下面表达式中除(D)外,其他表达式的机内值均等于10。

A.'\\xb'-1 B.F+I C.010+2 D.0xf-3 下面关于宏的叙述正确的是(A)。 A.宏定义没有数据类型限制 B.宏名必须用大写字母表示

C.宏定义必须位于源程序中所有语句之前 D.宏调用比函数调用耗费时间

设有声明语句“int b[3][3]={1,2,3,4,5,6,7,8,9};”,下面语句中不能输出数组元素b[1][2]的值6的是(C)。

A.printf(\B.printf(\ C.printf(\D.printf(\

如果要用fopen()函数打开一个新的二进制文件,该文件要既能读也能写,则文件打开方式应为(A)。

A.\ B.\C.\ D.\ 下面选项中,不能用作C语言标识符的是(C)。

A.print B.INT C.&a D._02 下面合法的标识符是(A)。

A.FOR B.-523 C.n b D.if 下面叙述中正确的是(B)。

A.C程序的基本组成单位是语句 B.简单C语句必须以分号结束

C.C程序中的每一行只能写一条语句 D.C程序必须在一行内写完

用C语言编写的源程序中,(A)是必不可少的。 A.名为main的函数定义 B.#include<> C.变量定义 D.注释部分

C源程序中的命令#include与#define是在(A)阶段被处理的。 A.预处理 B.编译 C.连接 D.执行 已有定义“int a=3, b=4, c=5;”,则下列表达式中值为0的是(D)。 A.a&&b B.a<=b C.a||b&&c D.!(!c||1)

22

一元二次方程ax+bx+c=0有两个相异实根的条件是a?0且b-4ac>0,下面选项中正确的表达式是(C)。

A.a!=0, b*b-4*a*c>0 B.a!=0||b*b-4*a*c>0 C.a&&b*b-4*a*c>0 D.!a&&b*b-4*a*c>0 下面关于语句的说法中正确的是(B)。

A.while语句的循环体至少会被执行1次 B.do-while语句的循环体至少会被执行1次 C.for语句的循环体至少会被执行1次

D.在C语言中只能用do、do-while或for语句实现循环结构 下面叙述中正确的是(C)。

A.break语句只能用于switch语句体中

B.continue语句的作用是:使程序的执行流程跳出包含它的所有循环 C.break语句只能用在循环体内和switch语句体内

D.在循环体内使用break语句和continue语句的作用相同

对于C语言函数,下列叙述中正确的是(A)。 A.函数的定义不能嵌套,但函数调用可以嵌套 B.函数的定义可以嵌套,但函数调用不能嵌套 C.函数的定义和调用都不能嵌套 D.函数的定义和调用都可以嵌套 设有下列程序段: static int y=2; void f2( )

{ static float d=3; …} int x=1; void f1( )

{ int z=3; …}

关于程序段中各变量的属性,下面叙述中错误的是(D)。 A.x是全局变量,函数f1可以访问,函数f2不能访问 B.y是全局变量,函数f1和函数f2都可以访问 C.z是动态变量,函数f1可访问,函数f2不可访问 D.d是静态变量,函数f1和函数f2都可以访问 表达式“'A' +4*'b'”的正确结果是(B)。

A.67 B.67.0 C.不确定 D.67L 存储字符串\需要的字节数是(D)。 A.11 B.13 C.6 D.7