《2022年C语言选择题 .pdf》由会员分享,可在线阅读,更多相关《2022年C语言选择题 .pdf(22页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、(1) 下面叙述正确的是() 。A) main( )函数必须位于源程序文件的开头B) 程序中必需含有自定义函数C) 每行最多只能写两条语句D) 所有语句都必须以分号“;”结束(2) 下面叙述错误的是() 。A) C 语言规定可逐个引用数组元素但不能一次引用整个数组B) C 语言数组名称是数组在内存中的首地址C) 数组中每一个元素都属于同一个数据类型D) C 语言数组长度在定义数组时刻不作确定(3) 以下程序段的运行结果是() 。int t 3=1,2,3,4,5,6,7,8,9,10,11,12; printf( “ %dn” ,t11); A) 4 B) 3 C) 5 D) 1(4) 以下程
2、序段的运行结果是() 。char str32= ,a?,?b?,? c? ,? 0? ,? e?,? f ? ; printf( “ %s” ,str0); A) abc0ef B) abcef C) abc D) a(5) 以下程序段的运行结果是() 。int f(int c) c+=2; return c; main( ) int a=2,c=5; a=f(a); printf( “ %d %d n” ,a,c); A) 2 4 B) 4 4 C) 4 5 D) 2 5(6) 下面叙述错误的是() 。A) “#define PRICE 30 ”命令的作用是定义一个与30 等价的符号常量PR
3、ICE 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 22 页 - - - - - - - - - B) C 源程序中加入一些预处理命令是为了改进程序设计环境,提高编程效率C) “#include ”命令的作用是在预处理时将stdio.h 文件中的实际内容代替该命令D) 宏定义也是C 语句,必须在行末加分号(7) 若有定义: int a=2,*p=&a; ,则以下()均表示地址。A) &a, p B) a,p C) a,*p D) &a, *p(8) 以下程序段运行后x
4、 的值为() 。int a =1,2,3,4,5,6,7,8; int i,x,*p; x=1; p=&a1; for (i=0;i3;i+) x*=*(p+i); A) 1 B) 120 C) 24 D) 6(9) 下列()对结构类型变量定义是错误的。A) struct teacher int num; int age; ; struct teacher teach1; B) struct int num; int age; teach1, teach2; C) struct int num; int age; teacher; struct teacher teach1; D) struc
5、t teacher int num; int age; teach1;(10) 以下程序段运行后, ()对数组 a 元素的引用是错误的。 (其中 0i4,0 j) j+; /*语句 3*/ A) 语句 1、2、3 均正确B) 语句 2 正确,语句1 和语句 3 错误C) 语句 1 错误,语句2 和语句 3 正确D) 语句 1、2、3 均错误(12) C 语言的基本数据类型包括() 。A) 整型、实型、字符型B) 整型、指针型、字符型C) 整型、实型、逻辑型D) 整型、实型、空类型(13) 下面程序运行后,屏幕显示File open error! ,则可能的原因是() 。#include mai
6、n() FILE *fp; char str256; fp=fopen( “ test.txt” ,” rt” ); if (fp= =NULL) printf( “ File open error!:); return; fscanf(fp,” %s” ,str); fclose(fp); A) 当前工作目录下没有test.txt 文件B) 函数 fopen( )的参数是错误的C) 当前工作目录下的test.txt 文件是空文件D) text.txt 文件已经打开(14)()语句符合C 语言语法。A) int a=b=2,c=5; 名师资料总结 - - -精品资料欢迎下载 - - - - -
7、 - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 22 页 - - - - - - - - - B) float x=3.2, int i,j=6; C) float x=2.3,b,c; D) int a=2,b+=a;(15) 若有定义: int x,y,z; 语句 x=(y=z=3,+y,z+=y); 运行后 x 的值为() 。A) 6 B) 7 C) 8 D) 3(16) 若有定义int a=8,b=5; 要实现输出形式为:8*5=40 ,正确的printf( ) 函数调用语句是() 。A) printf( “ a*b=a*
8、bn ” ); B) printf( “ a*b=%dn ” ,a*b); C) printf( “ %d*%d=a*bn ” ,a,b); D) printf( “ %d*%d=%dn ” ,a,b,a*b);(17) 若有定义: int a;且表达式 !a 的值为 0,则表达式()的值为1。A) !(a0) B) a!=0 C) a= =0 D) a=0(18) 下列运算符中优先级最低的是() 。A) B) * C) = D) !(19) 以下程序段运行后x 的值为() 。int a=3,b=6,x; x=(a= =b)?a+:-b; A) 6 B) 4 C) 5 D) 3(20) 以下程
9、序段运行后x 的值为() 。int i=0,x=0; for (;i=5;i+,i+) x+=3; A) 9 B) 15 C) 6 D) 12名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 22 页 - - - - - - - - - (21)()是关于 C 语言数据类型的正确叙述。A) 枚举类型不是基本类型B) 变量使用前应定义相应的数据类型C) 不允许使用空类型D) 数组不是构造类型(22)()是正确的数组定义。A) int n=5; int arrn; B) int
10、 n; n=5; int arrn; C) int arr10; D) int N=5, arrN;(23) 以下程序段运行后a 的值为() 。int a=2; a=strcmp(“ miss” ,” miss” ); A) true B) 0 C) 1 D) -1(24) 以下程序段的运行结果是() 。int fun(int array33) int j; for (j=0;n3;j+) array1j+; printf(n); main( ) int j,a33=0,1,2,1,0,4,2,4,5; fun(a); for (j=0;n6) a=a+b; else if (a= =6) b
11、=a+c; else a=b+c; printf(%dn,a); A) 9 B) 6 C) 8 D) 5(38) 以下程序段运行后x 的值为() 。int i,j,x=0 for (i=3;i=1;i-) for (j=1;j=i;j+) x=x+2; A) 8 B) 14 C) 10 D) 12(39) 下面叙述错误的是() 。A) c 源程序必须包含一个main( ) 函数B) c 源程序可由一个或多个函数组成C) 一个 c 源程序的执行是从main( )函数开始,直到main( ) 函数结束D) 注释说明部分只能位于c 源程序的最前面(40) 下面叙述错误的是() 。A) 一个指针变量只
12、能指向同一类型的变量B) 一个变量的地址称为该变量的指针C) 可以将一个整数值赋给指针变量D) 任何指针变量都可以与空指针NULL 进行比较(41) 以下程序的运行结果是() 。main() int x,y; int *p,*q,*t; x=23;y=45; p=&x;q=&y; t=p; p=q; q=t; printf(%d ,%dn,x,y); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 8 页,共 22 页 - - - - - - - - - A) 45,23 B) 45
13、,45 C) 23,45 D) 23,23(42) 若有定义int a=1,b=2,t=3; struct data char a float b3; long c; d1; 则变量 d1 的长度是() 。A) 4 B) 17 C) 12 D) 15(43) 以下程序的运行结果是() 。main() int a3=1,2,3; int *num3; int *p,i; for (i=0;i3;i+) numi=&ai; p=num; printf(%d ,*p); A) 1 B) &a0 C) 3 D) num(44) 下面程序运行后,屏幕显示write ok! ,则下面叙述正确的是() 。m
14、ain( ) FILE *fp; fp=fopen( “ data.txt” ,” wt” ); if (fp!=NULL) fprintf(fp, ” %sn” ,” File write successd!n ” ); fclose(fp); printf( “ write ok!n ” ); A) 当前工作目录下找不到data.txt 文件B) 当前工作目录的data.txt 文件已经打开C) 当前工作目录的data.txt 文件已经关闭D) 当前工作目录下存在data.txt 文件,其中的内容是” write ok! ”名师资料总结 - - -精品资料欢迎下载 - - - - - -
15、- - - - - - - - - - - - 名师精心整理 - - - - - - - 第 9 页,共 22 页 - - - - - - - - - (45)()为正确的用户标识符。A) union B) 3_row C) max_at D) min-5(46) 若有定义: int b=-15; ,则()为正确的赋值表达式。A) b=*5 B) *b=6 C) b+=b*3 D) b+10=-5(47) 以下叙述错误的是() 。A) 算术运算符中不包含“=”运算符B) 模运算符“ %”是 c 语言基本的算术运算符C) 算术运算符中只有“*” 、 “/”优先级高于关系运算符D) 自加和自减运算
16、符只能用于变量,而不能用于常量或表达式(48) 若有定义: float x=2,y; int a=3; 语句 y=1*(x+a)/3; 运行后, y 的值为() 。A) 2.0 B) 1.0 C) 0 D) 1.666667(49) 若有定义: int arr15,n=5; 无法正确引用arr 数组元素的是() 。A) arr10+n B) arr0 C) arr15-n D) arrn(50) 以下程序段运行后s 的值是() 。int a33=1,2,3,1,2,3,1,2,3; int i,j,s=0 for (i=0;i3;i+) for (j=i;jname B) t1.name C)
17、 t1.name0 D) t1-name0(55) 若有定义enum daysun,mon,tue,wed,thu,fri,sat; ,则枚举常量sun、mon 的值分别为() 。A) 0 1 B) 7 1 C) 7 0 D) 1 2名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 11 页,共 22 页 - - - - - - - - - (56) 若有语句int a; char c; scanf( “ %3d%c” ,&a,&c); , 为将整数135 赋给 a,字符6赋给 c,正
18、确的数据输入方式是() 。(说明: 代表换行, _代表空格)A) 135_6 B) 1356 C) 1356 D) 135_6_(56) 若有定义int a=3,b=5,c=8; 则表达式 !(a-b)| (c-b) 的值为() 。A) 1 B) 0 C) 2 D) 3(57) 若有定义: float x=3.5,y=5.5; 则表达式()的值为 2。A) (int)(x+y)%7 B) int (x+y)%7 C) (x+y)%7 D) (int)x+y%7(58) 若有定义: int i,x=0; 语句 for (i=1;i=3;i+) x+=2;与下列()程序段不等价。A) i=1; f
19、or (;i=3;i+) x+=2; B) for (i=1;i=3;) x+=2;i+; C) i=1; for (;i=3;) x+=2;i+; D) i=1;for ( ; ;i+) x+=2; (59) 以下()对二维数组arr 的初始化是错误的。A) int arr23=1,2,3,4,5,6; B) int arr 3=1,2,3,4,5; C) int arr23=1,3,4,5; D) int arr23=1,2,3,4; (60) 若有定义: char str110,str210= ” Fujian” ;,能将字符串” Fujian” 赋给数组 str1 的正确语句是() 。
20、A) strcopy(str1,str2); B) str1=” Fujian” ; C) strcpy(str2,str1); D) strcpy(str1,str2);(61) C 语言中,数组名作为函数调用的实参时,下面叙述正确的是() 。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 12 页,共 22 页 - - - - - - - - - A) 形参数组中各元素值的改变会使实参数组相应元素的值同时发生变化B) 传递给形参的是数组第一个元素的值C) 传递给形参的是数组元素的
21、个数D) 传递给形参的是数组中全部元素的值(62) 以下程序段的运行结果是() 。int x =2,3,4,5,6,7,*p=x; int i,s=0 for (i=1;i5;i+) s+=pi+; printf ( “ %d” ,s); A) 14 B) 6 C) 8 D) 20(63) 若有定义int x,a,b; 语句 x=(a=2,b=3,a+b); 运行后, x、a、b 的值依次为() 。printf(a=%d, a=%o, a=%xn,a, a, a); A) 2 3 5 B) 5 3 2 C) 3 2 5 D) 5 2 3(64) 以下程序段的运行结果是() 。int s=15;
22、 switch (s/4) default: printf( “ Over “ ); case 1: printf(“ One “ );break; case 2: printf(“ Two ” ); A) Two B) Over One C) Over Two D) One(65) 若有定义 #define F 2+3,则表达式F*F 的值为() 。A) 13 B) 17 C) 25 D) 11 (66) 以下程序段的运行结果是()int x3=1,2,3; int *p; p=x; for (p+;p&x2;p+) printf(“ %d “ ,*p); 名师资料总结 - - -精品资料欢
23、迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 13 页,共 22 页 - - - - - - - - - A) 2 B) 2 3 C) 3 D) 1 2 (67) 若有定义union u_type int x; float y3; char z; a; 则变量 a的长度是()A) 4 B) 1 C) 15 D) 12 (68) 若有定义: int a34=1,2,3,4,5,6,7,8,9,10,11,12,(*p)4;p=a;()对数组 a元素的引用是正确的。A) *(p+4) B) (*p)2 C) *(p2+
24、3) D) *(p4) (69)()为正确的字符常量。A) 084 B) C) 165 D) bcd (70) 以下程序段的运行结果是() 。int s=15; switch (s/4) case 1: printf(“ One “ ); case 2: printf(“ Two ” ); case 2: printf(“ Three” ); default: printf( “ Over “ ); A) Three Over B) Two Over C) Three D) One Over (71) 以下程序段运行后x 的值为() 。int a8=1,2,3,4,5,6,7,8,i,x=0;
25、 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 14 页,共 22 页 - - - - - - - - - for (i=1;i8;i+,i+) x=x+ai; A) 20 B) 18 C) 16 D) 36 (72) 以下程序段的运行结果是() 。char str = “ FuJian” ; printf ( “ %d” ,strlen(str); A) 8 B) 6 C) 7 D) 9 (73) 以下程序的运行结果是() 。int a=2,b=3; int min (int a
26、,int b) int c; c=ab?a:b; return (c); main( ) int a=4; printf( “ %d” ,min(a,b); A) 4 B) 2 C) 3 D) 2,3 (74) 以下程序段运行后*(p+) 的值为() 。char a5= ” work ” ; char *p; p=a; A) ,o?B) ,w?C) a1的地址D) a0的地址(75) 若有定义: int a10=0,1,2,3,4,5,6,7,8,9,*p=a;,则()表达式是错误的。A) p+ B) a+ C) a2 D) p2 名师资料总结 - - -精品资料欢迎下载 - - - - -
27、- - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 15 页,共 22 页 - - - - - - - - - (76) C 语言中,对文件操作的一般步骤是() 。A) 定义文件指针,读文件,写文件,关闭文件B) 操作文件,定义文件指针,修改文件,关闭文件C) 定义文件指针,打开文件,读写文件,关闭文件D) 打开文件,定义文件指针,读写文件,关闭文件(76)()为正确的变量名。A) 5_pro B) case C) else D) pro_5 (77) 下面叙述正确的是() 。A) 2/3 与 2%3 等价B) 5/(int)4.0 与 5/4 等
28、价C) +2 与- -3 等价D) +2 与 3 等价(78) 若有定义float x; ,要从键盘输入数据6.02 赋给 x,则应选用()语句。A) scanf (“ %8.2f” ,&x); B) scanf (“ %f” ,&x) C) scanf (“ %4.2f” ,&x) D) scanf (“ %1.2f” ,&x) (79) 若有定义: int x,a; 赋值语句 a=(x%3= =0)?0:1; 与()语句不等价。A) if (x%3!=0) a=1; else a=0; B) if (!(x%3= =0) a=1; else a=0; C) if (x%3= =0) a=0
29、; else a=1; D) if (x%3) a=0; else a=1; (80) 以下程序段运行后x 的值为() 。int i =0,x=2; while (i+=5) x+=2; A) 14 B) 8 C) 12 D) 10 (81) 下面叙述正确的是() 。A) 宏名必须用大写字母表示B) 一个源程序只能有一个预编译处理命令行名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 16 页,共 22 页 - - - - - - - - - C) 宏展开不占用运行时间,只占用编译时间
30、D) 预处理命令也是C 语句,必须以分号结束(82)()对枚举类型的定义是错误的。A) enum b1,2,3; B) enum aA,B,C; C) enum dX=0,Y=5,Z=9; D) enum cD=3,E,F; (83) C 源程序中main( )函数的位置() 。A) 必须在自定义函数前面B) 必须位于程序的最前面C) 必须在系统库函数后面D) 可以在自定义函数后面(84)()为合法的常量。A) 1.23E+8 B) 5,326 C) 3.21E-6.5 D) ,b_k?(85) 下面叙述正确的是() 。A) C 语言中整型与字符型变量的混合运算表达式的结果是整型B) “ ab
31、c” +” xxx” 是正确表达式C) 模运算符 ” %” 两边运算数的数据类型是任意的D) (3+9)+ 是正确表达式(86) 若有定义: int a=1,b=2,c=3,d=4,t=2,k=2; 语句 (t=ab)| (k=cd); 运行后, k 的值为() 。A) 0 B) 2 C) 1 D) -1 (87) 若有定义: int x; char c= ? A?;则正确的赋值表达式是() 。 (说明: ? A? 的 ASCII 码的十进制值为65,? a? 的 ASCII码的十进制值为97)A) x=c+?CBA?B) x=c+?ABC ?C) x=? ABC ?D) x=c+32 (88
32、) 下面叙述正确的是() 。A) for 循环只能用于循环次数已经确定的情况B) for 循环的循环体可包含多条语句,但必须用花括号 括起来名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 17 页,共 22 页 - - - - - - - - - C) 在 for 循环中,不能用break 语句跳出循环体D) for 循环是先执行循环体语句,后判断表达式(89) 若有定义: int a10,i=2; ,能正确引用a 数组的是() 。A) a(7) B) a10-i C) a10 D)
33、 a9+i (90) 若有定义: int a34=1,2,3,4,5,6,7;,则 a11 的值为() 。A) 3 B) 4 C) 1 D) 2(91) 以下程序段的运行结果是() 。Union int num1; int num2; s; s.num1=20; s.num2=30; printf( “ %d” ,s.num1); A) 2030 B) 20 C) 50 D) 30 (92) 若有定义: int a,b=5;,语句 a=(b/2)+b%2; 运行后 a 的值为() 。A) 4 B) 3 C) 0 D) 2 (93) 若有定义: char c1=?A? ,c2=? B?;,语句
34、printf( “ %d+%d=%d ” ,c1,c2,c1+c2); 运行后的结果为 () 。 (说明:?A? 的 ASCII码的十进制值为65)A) 65+66=131 B) A+B=AB C) A+B=131 D) 65+66=AB (94) 以下程序的运行结果是() 。fun( ) static int a=0; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 18 页,共 22 页 - - - - - - - - - a+; printf( “ %d “ ,a); main
35、( ) int i; for (i=1;i0;x-) ; D) for (i=10; ;i-) ; (97) 以下程序段运行后*(p+1) 的值为() 。char a =” good” ; char *p; p=a; A) ,o?B) a1的地址C) 不确定D) ,g?(98) 若有定义: int a32; ,则表达式 &a21-a 的值为() 。A) 2 B) 4 C) 5 D) 3 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 19 页,共 22 页 - - - - - - -
36、 - - (99)()能正确定义一个指向函数的指针。A) int (*p)( ) B) int (*p( ) C) (int *)p( ) D) int *p( ) (100) 若有定义Typedef int * INTEGER; INTEGER p; 则下面叙述正确的是()A) p 是与 INTEGER 相同的类型B) 程序中可用INTEGER 定义 int 类型指针变量C) p 是一个整型变量D) 程序中可用INTEGER 定义 int 类型变量(101) 若有定义: int a,b=6; 语句 a=-b;运行后, a、b 的值分别是() 。A) 5 6 B) 6 6 C) 5 5 D)
37、6 5(102) 以下程序段运行后x 的值为() 。int a33=1,2,3,4,5,6,7,8,9; int i=0,x=0; for ( ;i3;i+) x+=aii; A) 12 B) 0 C) 18 D) 15 (103) 以下程序的运行结果是() 。main( ) char a = ” 137” ,*p; for (p=a;pa+3;p+) printf(“ %s” ,p); A) 13737 B) 137 C) 137377 D) 7 (104)()不是文件读库函数。A) fread( ) B) fscanf( ) C) fgetc( ) 名师资料总结 - - -精品资料欢迎下载
38、 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 20 页,共 22 页 - - - - - - - - - D) fputs( ) (105) C 语言的函数体由()括起来。A) B) C) ( ) D) (106) 下面叙述错误的是() 。A) 一个 C 源程序可由一个或多个函数组成B) 构成 C 语言源程序的基本单位是语句C) C 源程序中大、小写字母是有区别的D) 若一条语句较长,可分写在下一行或多行上(107) 只能向终端输出一个字符的是() 。A) printf( ) 函数B) getchar( )函数C) pu
39、tchar( )函数D) scanf( )函数(108) 若有定义: int x=1,y=2,z=3; 则表达式()的值为0。A) !(xy|xz D) x-20) & !(x-5) B) -20 x-20 & x-5 D) -5x-20(111) C 语言中,二维数组元素在内存中的存放顺序是() 。A) 按列存放B) 由用户自己定义C) 按行存放D) 随机存放名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 21 页,共 22 页 - - - - - - - - - (112) 若有
40、定义: enum numa1,a2=3,a3,a4=0; ,则枚举常量a2、 a3的值分别为() 。A) 2 3 B) 3 4 C) 3 3 D) 1 2(113) 以下程序段运行后x 的值为() 。int a=1,2,3,b=4,3,3; int *p,*q; int i,x; p=a;q=b; for (i=0;i3;i+) if (*(p+i)= =*(q+i) x=*(p+i)*2; A) 2 B) 不确定C) 6 D) 4 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 22 页,共 22 页 - - - - - - - - -