常熟理工学院 c语言题库 (本二)

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1
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=1.23456; int i;”,欲将 x 中的数值保留小数点后两位,第三位进行四舍五入 运算,能实现该功能的表达式是(A)。 A.i=x*100+0.5, x=i/100.0 B.x=(x*100+0.5)/100.0 C.x=((int)x*100+0.5)/l00.0 D.x=(x/100+0.5)/100.0 下面定义符号常量 p 为 3.14 中正确的是(D)。 A.#define p 3.14; B.#define p(3.14) C.#define p=3.14 D.#define p 3.14 表达式 !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 的循环体不能是复合语句
3ຫໍສະໝຸດ Baidu
6 xy ,则不正确的 C 语言表达式是(C)。 bc
A.FOR B.-523 C.n b D.if 下面叙述中正确的是(B)。 A.C 程序的基本组成单位是语句 B.简单 C 语句必须以分号结束 C.C 程序中的每一行只能写一条语句 D.C 程序必须在一行内写完 用 C 语言编写的源程序中,(A)是必不可少的。 A.名为 main 的函数定义 B.#include<stdio.h> 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) 一元二次方程 ax2+bx+c=0 有两个相异实根的条件是 a 0 且 b2-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*25.0-'b'”的正确结果是(B)。 A.67 B.67.0 C.不确定 D.67L 存储字符串"\\\'abc\376"需要的字节数是(D)。 A.11 B.13 C.6 D.7 若有数组 a 和 b 的声明“static char a[]= "abcdef",b[]={ 'a', 'b', 'c', 'd', 'e', 'f'};”则数组 a 和数组 b 的长度分别是(A)。 A.7,6 B.6,7 C.6,6 D.7,7
下面选项中,不能用作 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 <math.h>”和声明“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("That's great! ");}”, 则调用 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.所有成员一直驻留在内存中
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("%d ",*(*(b+1)+2)) B.printf("%d ",*(&b[2][0]-1)); C.printf("%d ",*(b+1)[2]); D.printf("%d ",*(b[1]+2)); 如果要用 fopen()函数打开一个新的二进制文件,该文件要既能读也能写,则文件打开方式 应为(A)。 A."wb+" B."ab+" C."rb+" D."ab" 下面选项中,不能用作 C 语言标识符的是(C)。 A.print B.INT C.&a D._02 下面合法的标识符是(A)。
2
若已定义一个有返回值的函数,则下面关于调用该函数的叙述中错误的是(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 都可以访问 若有代数式
相关文档
最新文档