C语言题集及答案

举报
资源描述
本卷共有4 道大一、单项选择题(25道小题,共 50分)1、以下说法中正确的是(C)(2 分)A、C 语言程序总是从第一个的函数开始执行B、在 C 语言程序中,要调用的函数必须在main。函数中定义C、C 语言程序总是从main。函数开始执行D、C 语言程序中的main。函数必须放在程序的开始部分2、一个算法应该具有“确定性”等五个特性,下面对另外4 个特性的描述中错误的是(B)(2 分)A、有零个或多个输入 B、有零个或多个输出C、有 穷 性 D、可行性3、以下选项中,不 合 法 常 量 的 是(B)(2 分)A、1.234e04 B、1.234e0.4C、1.234e+4 D、1.234e04、C 语言中最简单的数据类型包括(B)(2 分)A、整型、实型、逻辑型 B、整型、实型、字符型C、整型、字符型、逻辑型 D、整型、实型、逻辑型、字符型5、能正确表示逻辑关系:“102=a2=0”的 C 语言表达式是(D)(2 分)A、10=a=0 B、a=0 and a=0lla=0&a士 A&ch=Z)?(ch+32):ch 的值是(B)。(2 分)A、A B、aC、Z D z11、执行程序段 int a=-l,b=4,k;k=(+a0)&!(b-=0);printf(i%d%d%dn”,k,a,b);后的输出结果是(D)o(2 分)A、1 04 B、1 03C、003 D、00412、设 int x=l,y=l;表达式(!xlly)的 值 是(B)。(2 分)A、0 B、1 C、2D、-113、程序段 int x=3;do printf(%d”,x-=2);w hile。(-x);的输出结果是(C)o (2 分)A、1 B、3 OC、1 -2D、死循环14、程序段 for(i=2;i=0;)printf(%d,i-);的循环次数是(A)。(2 分)A、无 限 次 B、0 次C、1 次 D、2 次15、语句intk=l;while(k+10);执行后,变量k 的值是(B)。(2 分)A、10 B、11C、9 D、无限循环,值不定16、程序 int i,sum;for(i=l;i float a(3)(4)18、若已定义chars10;在下面表达式中不能表示sl的地址的是(B)。(2 分)A、s+1 B、s+C、&sOJ+l D、&sl19、对两个字符数组a 和 b 进行初始化chara=ABCDEF”;char b=A,B,C,D,E,F ;则以下叙述正确的是(D)。(2 分)A、a 与 b 数组完全相同B、a 与 b 长度相同C、a 和 b 中都存放字符串D、a 数组比b 数组长度长20、有 说 明:char*language=FORTRAN,BASIC,PASCAL,JAVA,C;则表达式*languagel*language2比较的是(D)A、字符B 和字符P B、字符串FORTRAN和字符串BASICC、字符F 和字符B D、字符串BASIC和字符串PASCAL21、C 语言程序由函数组成,它的(B)。(2 分)A、主函数必须在其它函数之前,函数内可以嵌套定义函数B、主函数可以在其它函数之后,函数内不可以嵌套定义函数C、主函数必须在其它函数之前,函数内不可以嵌套定义函数D、主函数必须在其它函数之后,函数内可以嵌套定义函数22、在 C 语言中,若需一变量只在本文件中所有函数使用,则该变量的存储类别是(D)。(2分)A、extern B、registerC auto D static23、已知:川2=1,2,3,4,5,6与=t 则值为3 的 表 达 式 是(A.(2 分)A、p+=2,*(p+)B、p+=2,*+pC p+=3,*p+D p+=2,+*p24 设有说明语句ustruct stu int a;float b;stutype;,则叙述不正确的是(C)(2 分)A、struct是结构体类型的关键字。B、struct stu是用户定义的结构体类型。C、stutype是用户定义的结构体变量名。D、a 和 b 都是结构体变量。25、下列关于文件指针的描述中,错误的是(D)(2 分)A、文件指针是由文件类型FILE定义的 B、文件指针是指向内存某个单元的地址值。C、文件指针是用来对文件操作的标识。D、文件指针在一个程序中只能有一个。26、以下叙述中正确的是(B)(2 分)A、C 语言的源程序不必通过编译就可以直接运行B、C 语言中的每条可执行语句最终都将被转换成二进制的机器指令C、C 源程序经编译形成的二进制代码可以直接运行D、C 语言中的函数不可以单独进行编译27、以下叙述中正确的是(C)(2 分)A、用 C 语言实现的算法必须要有输入和输出操作B、用 C 语言实现的算法可以没有输出但必须要有输入C、用 C 程序实现的算法可以没有输入但必须要有输出D、用 C 程序实现的算法可以既没有输入也没有输出28、C 语言中,下列字符常量合法的是(A)(2 分)A、,t B、A C、65 D、A29、下列关于赋值运算符的表述中,错误的是(C)(2 分)A、赋值运算符优先级高于逗号运算符B、赋值运算符的结合性是从左至右C、赋值运算符是双目运算符D、赋值运算符可在表达式中连用30、设 a 和 b 均为double型 变 量,且 a=5.5、b=2.5,则表达式(int)a+b/b的 值 是(D)(2 分)A、6.500000 B、6 C、5.500000 D、6.000()0031、以下不是关键字的是(C)(2 分)A、continue B char C If D,default32、设 x,y为浮点型变量,合法赋值语句是(A)(2 分)A、x=8+y;B、(float)3;C、y=(x%2)/10;D、*x=10;33、已定义ch为字符型变量,以下赋值语句中错误的是(B)(2 分)A、ch=V;B、ch=62+3;C、ch=r;D、ch=xaa,;34、已知i、j、k 为 int型变量,若从键盘输入:1,2,3回车,使 i 的值为1、j 的值为2、k 的值为3,以下选项中正确的输入语句是(C)(2 分)A,scanf(%2d%2d%2d,&i,&j,&k);B、scanf(%d%d%d,&i,&j,&k);C scanf(%d,%d,%d,&i,&j,&k);D、scanf(i=%dj=%d,k=%d,&i,&j,&k);35、为了避免在嵌套的条件语句if e lse 中产生二义性,c 语言规定:else子句总是与(B)配对。(2 分)A、缩排位置相同的ifB、其之前最近的ifC、其之后最近的if D、同一行上的if36、能正确表示“当 x 的取值在 1,100和 200,300范围内为真,否则为假”的表达式是(A)。(2 分)A、(x=1)&(X=200)&(x=l)ll(x=200)ll(x=!)&(x=200)&(x=l)ll(x=200)ll(x3j-)if 0%3)j-;-j;-j;printf(%d ,j);的执行结果是(A)。(2 分A、7 4B、4 7C、5 6D、1 340、以下描述正确的是(C)。(2 分)A、由于do-while循环中循环体语句只能是条可执行语句,所以循环体内不能使用复合语句。B、do-while循环由do开始,用 while结束,在 while(表达式)后面不能写分号。C、在 do-while循环体中,一定要有能使while后面表达式的值变成零(“假”)的操作.D、do-while循环中,根据情况可以省略while41、以下正确的定义语句是(D)。(2 分)A、intal4=l,2,3,4,5);B、float x3=1 ,2,3;C.long b23=1,1,2,1,2,3);D、double y3=0;42、下面描述正确的是(D)o (2 分)A、字符串所包含的字符个数相同时,才能比较字符串B、字符个数多的字符串比字符个数少的字符串大C、字符串stop 与“stop”相等D、字 符 串“That”小于字符串The43、在 C 语言中,引用数组元素时,其数组下标的数据类型允许是(C)。(2 分)A、整型常量B、整型表达式C、整型常量或整型表达式D、任何类型的表达式44、若有说明:int a3=1,2,3,4,5,6,7;则 a 数组第一维的大小是(B).(2 分)A、2B、3C、4D、无确定值4 5 已知int f(int);和 int g(int);是函数f 和 g 的原形。下列语句中,将函数f 作为函数参数的 有(A)。(2 分)A,f(3);B、p=f(3);C、g(f(3);D、f(g(3);46、函数调用结束后,形式参数(C)。(2 分)A、继续占用相同大小的内存B、占用的内存减小C、释放内存D、不确定47、已知:int a,*p=&a;则下列函数调用中错误的是(D)。(2 分)Ascanf(%d,&aB.scanf(%d,p);C,printf(%d,a);D、printf(%d,p);48、枚举类型首元素默认值利两个相邻元素之间默认的差值分别是(C)(2 分)A、1,OB、1,1 C、0,1D、0,049、语句“fseek(fp,100L,2);”的功能是(C)(2 分)A、将 fp所指向文件的位置指针移至距文件首100个字节 B、将 fp 所指向文件的位置指针移至距文件尾100个字节。C、将 fp所指向文件的位置指针移至距当前位置指针的文件首方向100个字节。D、将fp 所指向文件的位置指针移至距当前位置指针的文件尾方向100个字节。50、以下叙述错误的是(D)(2 分)A、一个C 程序总是从main函数开始执行的;B、C 程序书写格式自由,一行内可以写几个语句,一个语句可以分写在多行上;C、每个语句和数据定义的最后必须有个分号;D、C 语言本身有输入输出语句。51、若有以下类型说明语句:char w;int x;float y;double z;则表达式w*x+zy 的结果类型是(D)(2 分)A、float char C int D、double52、下面不正确的字符串常量是(A)(2 分)A、abc1 B、n1212n C、“0“D、”53、已知各变量的类型说明如下:ini k,a,b=l;unsigned long w=5;则 以 卜.不符合C 语言语法的表达式是(A)(2 分)A、k=b+2=w B、w+=-2 C、k=(a=2,b=3,a+b)D、a+=a-=(b=4)*(a=3)54、执行下列语句 intx=10,y=3;printf(%dn,y=x/y)后 的 输 出 是(C)(2 分)A、OB、1 C、3D、不确定的值55、若执行以下程序段:int a=0,b=0,c=0;c=(a-=a-5),(a=b,b+3);printf(%d,%d,%dn”,a,b,c);其输出结果是(B)(2 分)A、0,0,-10B,0,0,5 C、-10,3,-10 D、3,3,-1056、已知i、j、k 为 int型变量,若从键盘输入:1,2,3回车,使 i 的值为l、j 的值为2、k 的值为3,以下选项中正确的输入语句是(C)(2 分)A、scanf(%2d%2d%2d,&i,&j,&k);B、scanf(%d%d%d,&i,&j,&k);C scanf(%d,%d,%d,&i,&j,&k);D、scanf(i=%d,j=%d,k=%d,&i,&j,&k);57、以下错误的if语句是(C)。(2 分)A、if(xy)z=x;B、if(x=y)z=0;C、if(x!=y)printf(%d,x)else printf(%d,y);D、if(xy)x+;y-;)58、条件运算符的结合方向是(A)。(2 分)A、自右至左;B、自左至右;C、任意;D、前后顺序;59、对于程序段序t x=-l;do x=x*x;while(!x);说法正确的是(C)(2 分)A,是死循环B、循环执行两次C、循 环 执 行 一 次 D、有语法错误60、t 为 int类型,进人下面的循环之
展开阅读全文
温馨提示:
金锄头文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
相关搜索

当前位置:首页 > 商业/管理/HR > 营销创新


电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号