《C语言考试试题带答案(第一套).docx》由会员分享,可在线阅读,更多相关《C语言考试试题带答案(第一套).docx(5页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、C语言考试试题带答案(第一套)1、设int a=2,b;则执行b=a&1;语句后,b的结果是( )A. 0B. 1C. 2D. 32 .逗号表达式(a=3*5,a*4),a+15的值是()A. 15B. 60C. 30D. 753 .在以下运算符中,优先级最高的运算符是A) ,B) C) &D) +=.在C语言中,逻辑值“真”用 表示。A) trueB)大于。的数 C)非0的整数 D)非0的数.C语言中,逻辑”其”等价于()0A、大于零的数B、大于零的整数C、非零的数D、非零的整数.假设在程序中a,b,c均被定义为整型,并且已赋大于1的值,则下列能正确表 示代数式1/abc的表达式是()0A、
2、1/a*b*cB、1/ (a*b*c)C、 1/a/b/(float) c D、 1.0/a/b/c7、以下标识符中,不能作为合法的C用户定义标识符的是:()A . a3_b3B. voidC. _123D. abc8.若要表示if( a不等于0 )这一关系式,则能正确表示这一关系的表达式为 if ()A) a0B) !aC) a=0D) a 9、有以下程序ma i n () (i nt a,b,d=25;a = d/10 & (-1);b = a & (-1);pr i ntf (%d, %dn, a, b);)程序运行后的输出结果是A 6, 1A 6, 1B 2, 1C 6, 0D 2,
3、0.若定义float a;现要从键盘输入a的数据,其整数位为3位,小数位为2 位,则选用( )oA) scanf (%f, &a) ;B) scanf (%5. 2f, a);C) scanf (%6. 2f,&a) ;D) scanfa);.下面程序段x=3;do(y=x;if (!y) (pr intf (x);cont inue;pr i ntf (#);)whi le(1=x5) pr i ntf (,z %d,x);e I se pr i ntf (,z %dnz, , x-1) ;A. 7 和 5B. 6 和 3C. 7 和 4D. 6 和 413.合法的数组定义是(A、i nt
4、a =str i ng;C、 vhst s=string;)B、int a5 = (0,1,2, 3,4,5);D、char a = 0,1,2,3,4,5);14、定义如下变量和数组,则输出结果是()。1 nt i;int x3 3 = 1,2,3,4,5,6, 7, 8, 9);for(i=0;i3;i+) pr intf (%d,x i2-i);A. 1 5 9 B. 1 4 7 C. 3 5 7D. 3 6 915 .若定义int x10;则Turbo C编译系统为该数组分配()个字节存储单OA. 10B. 11C. 20D. 2116 .以下程序输出的结果是()o#i ncIude
5、i nt func (i nt a, i nt b)return (a+b);ma i n ()int x=2, y=5, z=8, r;r=func(func(x, y), z);pr i ntf (%dn, r);1A、12 B、13 C、14 D、15.读程序,回答问题。#incIude int a = 2;int f(int n)(static int a = 3;int t = 0;if (n%2) static int a = 4;t+=a+;)e I se(static int a= 5;t+=a+;)return t+a+;)void main()(i nt s=a, i;fo
6、r(i=0;i3;i+) s+=f(i);pr i ntf (%dn, s);)程序运行结果是()oA、26 B、28 C、29 D、2517 .有以下程序viod fun (int a, int b, int c) a=456; b=567; c=678;ma i n () int x=10, y=20, z=30;fun (x, y, z);pr i ntf (%d, %d, %dn, x, y, z);)输出结果是 oA) 30, 20,10B)、10,20, 30 C) 456, 567, 678 D) 678, 567, 45619.以下程序执行之后sum的值是 oma i n ()
7、 int i , sum;for (i=1;i6;i+) sum+= i;pr i ntf (%dn, sum);A) 15 B) 14 C)不确定 D) 020、若有定义int *x3,b10;则正确的赋值语句是()A. x=b0; B. x=b;C. x0=b0; D. x 0=&b0;21、若有以下定义,则 是对数组元素的正确引用。int a5, *p=aA). *&a 4 B、* (p+5) C、*+a D、*(p-1)22.若有以下定义和语句,则值为12的表达式是struct wc( int a: int *b; )*p;int x0 = 11, 12), x1 = 31, 32);
8、static struct wc x2 = 100, xO, 300, x1;P二 x;A) *+p-b B) +p-a C) p-b D) * (p+)-b23、以下程序的输出结果为 o#i ncIudeenum season Spr ing, Summer=2, Autumn, Winter);ma i n ()enum season s1,s2;s1=Spr ing;s2二Autumn;pr i ntf(%d, %dn, s1, s2);)(A) 1,3(B) 0,2(C) 0,3(D) 1,224、下面程序运行的结果为:# i ncIude def i ne M 3# def i ne
9、 N M+1#define NN N*N/2 ma i n ()printf( “dn”,NN);)A、3 B、6 C、4 D、825.以下程序的运行结果是 o# i nc I ude std i o. h ma i n () struct Iong a ;1 nt b ; char c ; m ;pr i ntf ( %d n , s i zeof (m) ; A) 7B) 4 C) 1D) 826、有以下程序struct STUchar num10; float score3; ma i n ()struct STU s3 = 20021 ,90,95, 85,20022, 95, 80,
10、 75),20023, 100,95,90),*p=s;1 nt i; fI oat sum=0;for (i=0;i scorei;pr i ntf (%6. 2fn, sum);)程序运行后的输出结果是 oA) 260. 00 B) 270. 00 0) 280. 00 D) 285. 0027、以下可作为函数fopen中第一个参数的正确格式是。(A) c:usertext.txt (B) c:usertext.txt(C) c:usertext.txt (D) c:usertext.txt28、调用函数fgets (str, n, fp)如果成功,其功能是。(A)从fp所指定的文件中读出
11、n个字符并存放到字符数组str中。(B)从fp所指定的文件中读出(n-1)个字符并存放到字符数组str中。(C)从fp所指定的文件中读出(n-1)个字符并存放到字符数组str中,并使str n的值为01 o(D)从fp所指定的文件中读出(n-1)个字符并存放到字符数组str中,并 使 str n-1的值为0。29.若fp是指向某文件的指针,且已读到此文件末尾,则库函数feof (fp)的返 回值是()(A) EOF(B)0(C)非零值(D)NULL30、当已存在一个abc. txt文件时,执行函数fopen (abc.txt,“r+”)的功能是(D) oA.打开abc.txt文件,B.打开abc.txt文件, C.打开abc.txt文件, D.打开abc.txt文件,清除原有的内容只能读取原有内容可以读取和写入新的内容只能写入新的内容答案1-5 BCBDC 6-10DBDBA 11-15 CCDCC16-20 DCBAD 21 -25 AACBA 26-30 BDDCC
限制150内