《C语言期末考试试题及详细答案.docx》由会员分享,可在线阅读,更多相关《C语言期末考试试题及详细答案.docx(25页珍藏版)》请在第一文库网上搜索。
1、选择练习题1、C语言中最简单的数据类型包括(B)oA、整型,实型,逻辑型B、整型,实型,字符型C、整型,字符型,逻辑型D、整型,实型,逻辑型,字符型2、C语言中,运算对象必须是整型数的运算符是(A)oA、B、/C、和/D、*标识符由字母,数字和下划线组成且第一个字符必须为字母3、为表示关系xVyVz,应使用C语言表达式(A)oA、(XVy)&(yz)Bx(xy)AND(yz)C(XVyVZ)D、(xy)&(yUnsignedsCsshortsD1ongs13、判断变量Ch中的字符是否为大写字母,最简单的正确表达式是(A)oA、ch=A&chV=zB、A=ch=A&chV=Z14、在C语言中,能
2、表示无符号长整型常数的是(D)oA、O1Bs49627IOUCs912374uD.2U115、能正确表示C语言的字符常量的是(C)oA、0x41BAC0D、016、C语言中逻辑表达式的值为(A)oA、O或IBa非零值或零值Ctrue或fa1seD,true,或fa1se,17、C语言提供的基本数据类型关键字是(C)oA、integerBsF1OATCsUnsignedDDoub1e18、若定义语句:intb口=1,2,3,4,5),*P=b;则表达式*p+的值是(A)OA、IB、2C、b0的地址D、b1的地址19、在下列选项中,不正确的表达式是(OoA、abBc,+b,a+=1Ca=c+bn-
3、m=kDp+20、若有以下定义:inta=1,2,3,4,5,6,7);CharC1=b,c2=,2;则数值不为2的表达式是(D)oA、a1B,d,-c1Csa,3,-c2Dc2-025、下述对C语言字符数组的描述中错送的是(C)oA、字符数组可以存放字符串B、字符数组中的字符串可以整体输入、输出C、可以在赋值语句中通过赋值运算符”=对字符数组整体赋值D、不可以用关系运算符对字符组中的字符串进行比较27、以下程序的输出结果是(A)omain()inti=010,j=10,k=ox1O;printfC,%d,%d,%dn,i,j,k);A、8,10,16B,8,10,10C.10,10,10D.
4、10,10,1628、以下程序的输出结果是(B)oftinc1udemain()printf(,%dn,NU11);A、不确定的值(因变量无定义)B、0C.-ID.129、以下程序的输出结果是(B)omain()charc1,6,c2,0,;printf(,%d,%d,%dn,c1,c2,c1-c2);A、因输出格式不合法,输出出错信息B、54,48,6C、6.0,7D、6,0,632、下述对C语言字符数组的描述中错误的是(C)eA、字符数组可以存放字符串B、字符数组中的字符串可以整体输入、输出C、可以在赋值语句中通过赋值运算符=对字符数组整体赋值D、不可以用关系运算符对字符组中的字符串进行比
5、较33、TUrbOC中,对于以下程序(A)omain()intx,y;y=creat(&x);printf(,%dn,y);)creat(inta)returna+;A、编译时会给出错信息B、顺利进行编译、连接、执行;不报任何错误C、顺利通过编译、连接、但不能执行D、顺利通过编译,但连接出错34、设有如下定义:intx=10,y=4,z;则语句:printfC,%dn,Z=(x%y,xy);的输出结果是(C)oA、IB、OC,2D、335、下述程序段的输出结果是(D)omain()intx=10,y=10;printf(,%d,%dn,x+,+y);A、10,10B、11,11C、11,10D
6、、10,1136、定义如下变量和数组:itj;intx33=1,2,3,4,5,6,7,8,9);则下面语句的输出结果是(C)ofor(i=0;i3;i+)printf(,%d,xi2i);A、159B、147C、357D.36937、若要求在if后一对圆括号中表示a不等于O的关系,则不能正确表示这一关系的表达式为(C)。A、aOB!aC、a=0D、a38、若m,y,z均为int型变量,则执行下面语句后In值是(A)om=1;x=2;y=3;z=4;m=(mx)?m:x;m=(my)?m:y;m=(mz)?m:z;A、IB、2C、3D、439、若有定义:inta=7;f1oatx=2.5,y=
7、4.7,则表达式x+a%3*(int)(x+y)%24的值是(A)A、2.500000B2.750000C3.500000D.0.00000040、如下说法不正确的是(C)eAsca+b等效于c(a+b)B、若a,b均为真,则ab为真C、表达式cftd的值为0D、逻辑运算符!比逻辑运算符II的优先级高41、putcharO函数可以向终端输出一个(B)oA、整型变量表达式值B、字符C、字符串D、实型变量值42、表达式184*sqrt(4.0)/8值的数据类型为(C)oA、intB、f1oatCdoub1eD不确定43、若已定义a为整型变量:a=-21;printf(%dn,a);则以上语句(B)
8、oA、赋值不合法B、输出值为-2C、输出为不确定值D、输出值为245、若int类型数据占两个字节,则以下语句的输出为(D)ointk=-1;printf(,%d,%un,k,k);A、-1,TB、-1,32767C、-1,32768D、-1,6553546、已知字母a的ASCH码十进制值为97,则执行以下语句后的输出为(C)oyhgchara,a;a;printf(,%d,%cn,a,2,一0,a,3,一0);A、b,cB、a一运算不合法,故有语法错C、98,cD、格式描述和输出项不匹配,输出无定值47、下面语句中(B)是C语言的正确赋值语句。A、a=1,b=2B、I+;C、a=b=5Dsy=
9、int(x);48、设有以下说明语句Structstuinta;fIoatb;stutype;则下面的叙述不正确的是(C)oA中声明变量并初始化时:inta=1,b=5;但是,只赋值时是不能这样写的,应该写成a=1;b=2;C无分号,不是完整的语句,D中X没有定义,如果是AStrUCt是结构体类型的关键字B、StrUCtStU是用户定义的结构体类型C、StUtyPC是用户定义的结构体类型名D、a和b都是结构体成员名A、(x=1)&(x=100)&(x=1)I(x=100)I(x=1)&(x=100)&(x=1)II(x=100)&(x0;n-)的循环次数为(A)oA、10B、9C、11D、12
10、51、在对文件进行操作时,若要求文件的位置指针回到文件的开头,则应当调用的库函数是(D)oA、fopen()Bfseek()Cfc1ose()Drewind()52、下列哪个数组定义是正确的(D)oA、inta5.5;B、INTa10;Cintan;D、inta3+2;53、一个变量的指针就是(A)oA、变量的地址B、变量的值C、变量的名称D、变量的类型55、下列正确的说法是(C)oA、宏替换是在程序运行时进行的B、函数调用是在程序编译时进行的C、宏替换时,如果实参是表达式,应先求表达式的值,再替换D、函数调用时,如果实参是表达式,应先求表达式的值,再替换56、对于数学式72a,下面正确的C语
11、言表达式是(D)oA、sqr(x)2aBsqr(x)2*aCsqrt(x)/(2*a)Dsqrt(x)2*a57、若int类型数据占2字节,则以下语句的输出为(D)ointk=32768;printf(,%d,%un,k,k);A、-1,65535B.-1,32767C、-1,-1,D、-32768,3276859、下面程序中(B)有错误。1) ftinc1ude2) main()3) 4) inta30,O,O;5) inti;6) for(i=0;i3;i+)scanf(%D,&ai);7) for(i=1;i3;i+)a0=a0+ai;8) printfC,%dn,a0;A、第4行B、第6行C、第7行D、第8行60、下面程序的运行结果(C)omain()unsigneda=3,b=10;5printfC,%dn,a1=;A、3B、IOC、13D、14%m.nd表示最大场宽m,小数位为n位,整数位则为rnT位,够m位右对齐。f.nf可以控制输61、已定义x为f1oat型变量。x=213.82631;Printf(,%-4.2fn,x);则以上程序(A)oA、输出格式描述符的域宽不够,不能输出B、输出为213.83C、输出为213.82D、输出为-213.8262、设已定义整型变量K,则下面的程序输出为(D)ok=017;S=H1;