您好,欢迎访问三七文档
一、选择题(1)栈和队列的共同特点是A)都是先进先出B)都是先进后出C)只允许在端点处插入和删除元素D)没有共同点正确答案:C(2)已知二叉树后序遍历序列是dabec,中序遍历序列是debac,它的前序遍历序列是A)acbedB)decabC)deabcD)cedba正确答案:D(3)链表不具有的特点是A)不必事先估计存储空间B)可随机访问任一元素C)插入删除不需要移动元素D)所需空间与线性表长度成正比正确答案:B(4)结构化程序设计的3种结构是A)顺序结构、选择结构、转移结构B)分支结构、等价结构、循环结构C)多分支结构、赋值结构、等价结构D)顺序结构、选择结构、循环结构正确答案:D(5)为了提高测试的效率,应该A)随机选取测试数据B)取一切可能的输入数据作为测试数据C)在完成编码以后制定软件的测试计划D)集中对付那些错误群集的程序正确答案:D(6)算法的时间复杂度是指A)执行算法程序所需要的时间B)算法程序的长度C)算法执行过程中所需要的基本运算次数D)算法程序中的指令条数正确答案:C(7)软件生命周期中所花费用最多的阶段是A)详细设计B)软件编码C)软件测试D)软件维护正确答案:D(8)数据库管理系统DBMS中用来定义模式、内模式和外模式的语言为A)CB)BasicC)DDLD)DML正确答案:C(9)下列有关数据库的描述,正确的是A)数据库是一个DBF文件B)数据库是一个关系C)数据库是一个结构化的数据集合D)数据库是一组文件正确答案:C(10)下列有关数据库的描述,正确的是A)数据处理是将信息转化为数据的过程B)数据的物理独立性是指当数据的逻辑结构改变时,数据的存储结构不变C)关系中的每一列称为元组,一个元组就是一个字段D)如果一个关系中的属性或属性组并非该关系的关键字,但它是另一个关系的关键字,则称其为本关系的外关键字正确答案:D(11)以下叙述中正确的是A)C语言比其他语言高级B)C语言可以不用编译就能被计算机识别执行C)C语言以接近英语国家的自然语言和数学语言作为语言的表达形式D)C语言出现的最晚,具有其他语言的一切优点正确答案:C(12)C语言中用于结构化程序设计的3种基本结构是A)顺序结构、选择结构、循环结构B)if,switch,breakC)for,while,do-whileD)if,for,continue正确答案:A(13)C语言中最简单的数据类型包括A)整型、实型、逻辑型B)整型、实型、字符型C)整型、字符型、逻辑型D)字符型、实型、逻辑型正确答案:B(14)若变量已正确定义并赋值,以下符合C语言语法的表达式是A)a:=b+1B)a=b=c+2C)int18.5%3D)a=a+7=c+b真的不掉线吗??、????????????正确答案:B(15)下列可用于C语言用户标识符的一组是A)void,define,WORDB)a3_b3,_123,CarC)For,-abc,IFCaseD)2a,DO,sizeof正确答案:B(16)C语言中运算对象必须是整型的运算符是A)%=B)/C)=D)=正确答案:A(17)若变量a,i已正确定义,且i已正确赋值,合法的语句是A)a==1B)++i;C)a=a++=5;D)a=int(i);正确答案:B(18)已知intt=0;while(t=1){...}则以下叙述正确的是A)循环控制表达式的值为0B)循环控制表达式的值为1C)循环控制表达式不合法D)以上说法都不对正确答案:B(19)若变量已正确说明为float型,要通过语句scanf("%f%f%f",&a,&b,&c);给a赋予10.0,b赋予22.0,c赋予33.0,下列不正确的输入形式是A)10回车22回车33回车B)10.0,22.0,33.0回车C)10.0回车22.033.0回车D)1022回车33回车正确答案:B(20)有如下程序:main(){intx=1,a=0,b=0;switch(x){case0:b++;case1:a++;case2:a++;b++;}printf(a=%d,b=%d\n,a,b);}该程序的输出结果是A)a=2,b=1B)a=1,b=1C)a=1,b=0D)a=2,b=2正确答案:A(21)有以下程序main(){inti=1,j=1,k=2;if((j++||k++)&&i++)printf(%d,%d,%d\n,i,j,k);}执行后输出结果是A)1,1,2B)2,2,1C)2,2,2D)2,2,3正确答案:C(22)有如下程序main(){floatx=2.0,y;if(x0.0)y=0.0;elseif(x10.0)y=1.0/x;elsey=1.0;printf(%f\n,y);}该程序的输出结果是真的不掉线吗??、????????????A)0.000000B)0.250000C)0.500000D)1.000000正确答案:C(23)有如下程序:main(){intn=9;while(n6){n--;printf(%d,n);}}该程序的输出结果是A)987B)876C)8765D)9876正确答案:B(24)在下列选项中,没有构成死循环的是A)inti=100;while(1){i=i%100+1;if(i100)break;}B)for(;;);C)intk=10000;do{k++;}while(k10000);D)ints=36;while(s)--s;正确答案:D(25)设intx=1,y=1;表达式(!x||y--)的值是A)0B)1C)2D)-1正确答案:B(26)若已定义的函数有返回值,则以下关于该函数调用的叙述中错误的是A)函数调用可以作为独立的语句存在B)函数调用可以作为一个函数的实参C)函数调用可以出现在表达式中D)函数调用可以作为一个函数的形参正确答案:D(27)有以下程序floatfun(intx,inty){return(x+y);}main(){inta=2,b=5,c=8;printf(%3.0f\n,fun((int)fun(a+c,b),a-c));}程序运行后的输出结果是A)编译出错B)9C)21D)9.0正确答案:B(28)若有以下调用语句,则不正确的fun函数的首部是main(){…inta[50],n;…fun(n,&a[9]);…}A)voidfun(intm,intx[])B)voidfun(ints,inth[41])C)voidfun(intp,int*s)D)voidfun(intn,inta)正确答案:D(29)fseek函数的正确调用形式是A)fseek(文件指针,起始点,位移量)B)fseek(文件指针,位移量,起始点)C)fseek(位移量,起始点,文件指针)D)fseek(起始点,位移量,文件指针)正确答案:B真的不掉线吗??、????????????(30)若fp是指向某文件的指针,且已读到文件末尾,则函数feof(fp)的返回值是A)EOFB)-1C)1D)NULL正确答案:C(31)若有说明语句:charc='\72';则变量cA)包含1个字符B)包含2个字符C)包含3个字符D)说明不合法,c的值不确定正确答案:A(32)若有说明inta[3][4];则a数组元素的非法引用是A)a[0][2*1]B)a[1][3]C)a[4-2][0]D)a[0][4]正确答案:D(33)设有以下说明语句structstu{inta;floatb;}stutype;则下面的叙述不正确的是A)struct是结构体类型的关键字B)structstu是用户定义的结构体类型C)stutype是用户定义的结构体类型名D)a和b都是结构体成员名正确答案:C(34)在C语言中,引用数组元素时,其数组下标的数据类型允许是A)整型常量B)整型表达式C)整型常量或整型表达式D)任何类型的表达式正确答案:C(35)若运行时给变量x输入12,则以下程序的运行结果是main(){intx,y;scanf(%d,&x);y=x12?x+10:x-12;printf(%d\n,y);}A)0B)22C)12D)10正确答案:A(36)以下说法正确的是A)C语言程序总是从第一个的函数开始执行B)在C语言程序中,要调用函数必须在main()函数中定义C)C语言程序总是从main()函数开始执行D)C语言程序中的main()函数必须放在程序的开始部分正确答案:C(37)表达式0x13^0x17的值是A)0x04B)0x13C)0xE8D)0x17正确答案:A(38)有以下程序#defineF(X,Y)(X)*(Y)main(){inta=3,b=4;printf(%d\n,F(a++,b++));}程序运行后的输出结果是A)12B)15C)16D)20正确答案:A(39)下列程序执行后的输出结果是voidfunc(int*a,intb[]){b[0]=*a+6;}main(){inta,b[5];a=0;b[0]=3;func(&a,b);printf(%d\n,b[0]);真的不掉线吗??、????????????}A)6B)7C)8D)9正确答案:A(40)若有下面的程序段:chars[]=china;char*p;p=s;则下列叙述正确的是A)s和p完全相同B)数组s中的内容和指针变量p中的内容相等C)s数组长度和p所指向的字符串长度相等D)*p与s[0]相等正确答案:D(41)以下程序中函数sort的功能是对a数组中的数据进行由大到小的排序voidsort(inta[],intn){inti,j,t;for(i=0;in-1;i++)for(j=i+1;jn;j++)if(a[i]a[j]){t=a[i];a[i]=a[j];a[j]=t;}}main(){intaa[10]={1,2,3,4,5,6,7,8,9,10},i;sort(&aa[3],5);for(i=0;i10;i++)printf(%d,,aa[i]);printf(\n);}程序运行后的输出结果是A)1,2,3,4,5,6,7,8,9,10,B)10,9,8,7,6,5,4,3,2,1,C)1,2,3,8,7,6,5,4,9,10,D)1,2,10,9,8,7,6,5,4,3,正确答案:C(42)以下程序的运行结果是#includestdio.hmain(){structdate{intyear,month,day;}today;printf(%d\n,sizeof(structdate));}A)6B)8C)10D)12正确答案:A(43)若有语句int*point,a=4;和point=&a;下面均代表地址的一组选项是A)a,point,*&aB)&*a,&a,*pointC)*&point,*point,&aD)&a,&*point,point正确答案:D(44)在调用函数时,如果实参是简单的变量,它与对应形参之间的数据传递方式是A)地址传递B)单向值传递C)由实参传形参,再由形参传实参D)传递方式由用户指定正确答案:B(45)已定义以下函数fun(char*p2,char*p1){while((*p2=*p1)!='\0'){p1++;p2++;}}函数的功能是A)将p1所指字符串复制到p2所指内存空间B)将p1所指字符串的地址赋给指针p2C)对p1和p2两个指针所指字符串进行比较D)检查p1和p2两个指针所指字符串中是否有'\0'正确答案:A(46)若执行下述程序时,若从键盘输入6和8时,结果为main(){inta,b,s;scanf(%d%d,&a,&b);s=aif(ab)真的不掉线吗??、????????????s=b;s*=s;printf(%d,s);}A)36B)64C)48D)以上都不对正确答案:B(47)fscanf函数的正确调用形式是A)fscanf(fp,格式字符串,输出表列);B)fscanf(格式字符串,输出表列,fp);C)fscanf(格式字
本文标题:C语言试题_(5)
链接地址:https://www.777doc.com/doc-2908521 .html