

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
《C语言程序设计》模拟题一、单项选择题1.下面程序运行的结果是voidss(char*s,chart){while(*s){if(*s==t)*s=t-‘a’+’A’;s++;}}voidmain(){charstr1[100]=”abcddfefdbd”,c=’d’;ss(str1,c);printf("%s\n",str1);}A.ABCDDFEFDBDB.abcDDfefDbDC.abcAAfefAbAD.Abcddfefdbd[正确的答案选项为]:B2.C语言规定,简单变量做实参时,它和对应形参之间的数据传递方式是A.地址传递B.单向值传递C.由实参传给形参,再由形参传给实参D.由用户指定传递方式[正确的答案选项为]:B3.C语言中的标示符只能由字母,数字和下划线三种字符组成,且第一个字符()A.必须是字母B.必须是下划线C.必须是字母或下划线D.可以是字母或数字或下划线中的任意一种[正确的答案选项为]:C4.不能把字符串:"good!"赋给数组b的语句是A.charb[10]={’g’,’o’,’o’,’d’,’!’};B.charb[10];b="good!";C.charb[10];strcpy(b,"good!");D.charb[10]="good!";[正确的答案选项为]:B5.对for(表达式1;;表达式3)可以理解为A.for(表达式1;0;表达式3)B.for(表达式1;表达式1;表达式3)C.for(表达式1;1;表达式3)D.for(表达式1;表达式3;表达式3)[正确的答案选项为]:C6.面向对象程序设计将数据与()放在一起,作为一个相互依存不可分割的整体来处理.A.对数据的操作B.信息C.数据隐藏D.数据抽象[正确的答案选项为]:A7.若二维数组a有m列,则在a[i][j]前的元素个数为A.j*m+iB.A.i*m+jC.i*m+j-iD.i*m+j+1[正确的答案选项为]:B8.若有int*p,a[10];p=a;,则下列写法不正确的是A.p=a+2B.a++C.*(a+1)D.p++[正确的答案选项为]:B9.若有以下定义:chars[10]="include“,*p=s;,则不能代表字符‘u’的表达式为A.s[4]B.s+4C.*(p+4)D.p+=4,*p;[正确的答案选项为]:B10.设c1,c2均是char型变量,则下面不正确的函数调用为A.scanf("c1=%cc2=%c”,&c1,&c2);B.getchar();C.putchar(c2);D.putchar(c1,c2);[正确的答案选项为]:D11.说明一个结构体变量时,系统分配给它的内存是A.各成员所需内存量的总和B.结构体中第一个成员所需内存量C.成员中占内存量最大者所需的容量D.结构体中最后一成员所需内存量[正确的答案选项为]:A12.下列数据中,合法的8进制常量是().A.473B.931C.0abcD.10[正确的答案选项为]:D13.下面不正确的说法是:C语言规定A.实参可以是常量,变量或表达式B.形参可以是常量,变量或表达式C.实参传递给形参时,要求实参必须有确定的值D.形参应与其对应的实参类型可以不一致[正确的答案选项为]:B14.以下说法中正确的是A.C语言程序总是从第一个定义的函数开始执行B.在C语言程序中,要调用的函数必须在main函数中定义C.C语言程序总是从main函数开始执行D.C语言程序中的main函数必须放在程序的开始部分[正确的答案选项为]:C15.下面程序段的输出结果是charc1=’6’,c2=’0’;printf(”%c,%c,%d,%d\n”,c1,c2,c1-c2,c1+c2);A.因输出格式不合法,输出出错信息B.6,0,6,102C.6,0,7,6D.6,0,5,7[正确的答案选项为]:B16.下面的循环结构中,不是无限循环的是A.for(i=1;;i++)B.i=1;while(i--)C.i=1;do{printf(”%d”,i);i++;}while(--i);D.for(i=0;i;i++)[正确的答案选项为]:D17.下面是对s的初始化,其中不正确的是A.chars[5]={"abc"};B.chars[5]={‘a’,’b’,’c’};C.chars[5]=””;D.chars[5]=”abced”;[正确的答案选项为]:D18.下面说法中不正确的是A.一个C源程序可有一个或多个函数组成B.一个C源程序必须包含一个main函数C.C程序的基本组成是函数D.在C程序中,注释语句只能位于一条语句的后面[正确的答案选项为]:D19.下面四个选项当中,均是关键字的是()A.auto,enum,includeB.switch,typedef,continueC.signed,union,scanfD.if,struct,type[正确的答案选项为]:B20.已知ch是字符型变量,下面不正确的赋值语句为A.ch=’a+b’;B.ch=’\0’;C.ch=’7’+’9’;D.ch=5+9;[正确的答案选项为]:A21.以下正确的说法是A.定义函数时,形参的类型说明可以放在函数体内B.return后边的值不能为表达式C.如果函数值的类型和返回值类型不一致,以函数值类型为准D.如果形参与实参的类型不一致,以函数值类型为准[正确的答案选项为]:C22.C语言规定,在一个源程序中,main函数的位置A.必须在最开始B.必须在系统调用的库函数的后面C.可以任意D.必须在最后[正确的答案选项为]:C23.sizeof(double)是一个()表达式.A.整型B.双精度C.不合法D.函数调用[正确的答案选项为]:A24.不正确的定义语句是A.doublex[5]={2.0,4.0,6.0,8.0,10.0};B.inty[5]={0,1,3,5,7,9};C.charc1[]={’1’,’2’,’3’,’4’,’5’};D.charc2[]={’\x10’,’\x0a’,’\x08’};[正确的答案选项为]:B25.对if语句中表达式的类型,下面正确的说法是A.必须是关系表达式B.必须是关系表达式或逻辑表达式C.可以是任意表达式D.必须是关系表达式或算术表达式[正确的答案选项为]:C26.能正确表示a和b同时为正或同时为负的表达式是A.(a>=0||b>=0)&&(a<0||b<0)B.(a>=0||b>=0)&&(a<0&&b<0)C.(a+b>0)&&(a+|b<0)D.a*b>0[正确的答案选项为]:D27.若使用以为数组名作函数实参,则下面说法中正确的是A.在被调函数中,与该实参相对应的形参必须是同类型的数组名或指针变量B.实参数组类型与形参数组类型可以不匹配C.在被调函数中,不需要考虑形参数组的大小D.实参数组名与形参数组名必须一致[正确的答案选项为]:A28.若有定义:inta[10],*p=a;,则p+5表示A.元素a[5]的地址B.元素a[5]的值C.元素a[6]的地址D.元素a[6]的值[正确的答案选项为]:A29.若有以下结构体定义,则正确的引用和定义是structexample{intx;inty;}v1;A.example.x=10B.examplev2;v2.x=10;C.structv2;v2.x=10;D.structexamplev2={10,5};[正确的答案选项为]:B30.设p1,p2是指向同一个字符串的指针变量,c为字符变量,则不能正确执行的赋值语句为A.c=*p1+*p2;B.p2=c;C.p1=p2;D.c=(*p1)*(*p2);[正确的答案选项为]:B31.为了表示关系x>=y>=z,下面C语言表达式中正确的是A.(x>=y)&&(y>=z)B.(x>=y)and(y>=z)C.(x>=y>=z)D.(x>=y)&(y>=z)[正确的答案选项为]:A32.下列数据中属于"字符串常量"的是().A.abgB."sdfk"C.‘dfk’D.‘a’[正确的答案选项为]:B33.下面程序的输出结果是voidmain(){inti=010,j=10;printf("%d,%d",i++,++j);}A.10,11B.11,11C.8,11D.8,10[正确的答案选项为]:C34.下面程序的运行结果是voidmain(){inta,b,d=241;a=d/100%9;b=(-1)&&(-1);printf("%d,%d",a,b);}A.6,1B.2,1C.6,0D.2,0[正确的答案选项为]:B35.下面程序段的运行结果是charc[]=”\t\b\\\0will\n”;printf("%d“,strlen(c));A.14B.3C.9D.字符串中有非法字符,输出值不确定[正确的答案选项为]:B36.下面关于for循环的正确描述是A.for循环只能用于循环次数已经确定的情况B.for循环中是先执行循环体语句,后判断表达式C.在for循环中,不能用break语句跳出循环D.for循环的循环体可以包含多条语句,但必须用花括号括起来[正确的答案选项为]:D37.下面是对象概念的描述中,()是错误的.A.对象C就是C语言中的结构变量B.对象代表着正在创建的系统中一个实体C.对象是一个状态和操作的封装体D.对象之间的信息传递是通过消息进行的[正确的答案选项为]:A38.下面说法中正确的是A.在C语言中,可以使用动态内存分配技术,定义元素个数可变的数组B.在C语言中,数组元素的个数可以不确定,允许随即变动C.在C语言中,数组元素的数据类型可以不一致D.在C语言中,定义数组后,就确定了它能容纳的相同数据类型元素的个数[正确的答案选项为]:D39.一个C语言程序是由A.一个主程序或若干个子程序组成B.函数组成C.若干过程组成D.若干个子程序组成[正确的答案选项为]:B40.以下关于运算符优先顺序的描述中正确的是A.关系运算符<算术运算符<赋值运算符<逻辑运算符B.逻辑运算符<关系运算符<算术运算符<赋值运算符C.赋值运算符<逻辑运算符<关系运算符<算术运算符D.算术运算符<关系运算符<赋值运算符<逻辑运算符[正确的答案选项为]:C41.C语言规定,函数返回值的类型是由A.return语句中的表达式类型所决定B.调用该函数时的主调函数类型所决定C.调用该函数时系统临时决定D.在定义该函数时所指定的函数类型所决定[正确的答案选项为]:D42.C语言中,函数的隐含存储类型是().A.autoB.staticC.externD.register[正确的答案选项为]:A43.变量的指针,其含义是指该变量的A.值B.地址C.名D.一个标志[正确的答案选项为]:B44.程序段如下,则正确的执行结果是intk=0;while(k++<=2);printf(“%d\n",k);A.2B.3C.4D.无结果[正确的答案选项为]:C45.对于基类型相同的两个指针变量之间,不能进行的运算是A.<B.=C.+D.-[正确的答案选项为]:C46.若x,i,j和k都是int型变量,则计算下面表达式后,x的值为().x=(i=4,j=16,k=32)A.4BB.16CC.32DD.52[正确的答案选项为]:C47.若用数组名作为函数调用的实参,传递给形参的是A.数组的首地址B.数组第一个元素的值C.数组中全部元素的值D.数组元素的个数[正确的答案选项为]:A48.若有条件表达式(exp)?a++:b--,则以下表达式中完全等价于表达式(exp)的是A.(exp==0)B.(exp!=0)C.(exp==1)D.(exp!=1)[正确的答案选项为]:B49.若执行下面的程序段,则下面描述中正确的是intk=5;while(k=1)k--;A.while循环执行四次B.循环体执行一次C.循环体一次也不执行D.死循环[正确的答案选项为]:D50.设x,y,z,t均为int型变量,则执行以下语句后,t的值为______.x=y=z=1;t=++x||++y&&++zA.不定值B.2C.1D.0[正确的答案选项为]:C51.下列常量中,合法的C常量是A."x-y"B.‘105’C.‘Be’D.07ff[正确的答案选项为]:A52.下列说法中正确的是A.结构体变量可以作为一个整体进行其值得输入和输出B.结构体成员项不可以是结构体C.结构体成员项可以是结构体或其他任何C语言的数据类型D.结构体变量和结构体是相同的概念[正确的答案选项为]:C53.下面程序的输出结果是voidmain{inti=011,j=11;printf("%d,%d\n",++i,j--);}A.10,11B.12,10C.11,11D.10,9[正确的答案选项为]:A54.下面程序的执行结果为voidmain(){intx=20,y;y=++x;y+=x;printf(”%d,”y);y=x--;y+=x;printf(”%d,”y);}A.42,41B.42,42C.40,41D.42,40[正确的答案选项为]:A55.下面程序段的运行结果是charc[5]={‘a’,’b’,’\0’,’c’,’\0’};printf("%s",c);A.‘a’’b’B.abC.abcD.abc[正确的答案选项为]:B56.下面哪项是构成C语言的基本单位A.函数B.过程C.子程序D.子例程[正确的答案选项为]:A57.下面说法正确的是,在C语言中A.实参和与其对应的形参各占用独立的存储单元B.实参和与其对应的形参共占用一个存储单元C.只有当实参和与其对应的形参同名时才共占用存储单元D.形参是虚拟的,不占用存储单元[正确的答案选项为]:A58.下面说法中正确的是:在C语言程序中A.函数的定义可以嵌套,但函数的调用不可以嵌套B.函数的定义不可以嵌套,但函数的调用可以嵌套C.函数的定义和调用均不可以嵌套D.函数的定义和调用均可以嵌套[正确的答案选项为]:B59.一个变量的指针是指A.该变量的值B.该变量的地址C.该变量的变量名D.该变量的标志[正确的答案选项为]:B二、判断题1.C语句以句号结束.[正确的答案选项为]:F2.‘’中只能放一个字符.[正确的答案选项为]:T3.const表示常变量.[正确的答案选项为]:T4.C程序的三种基本结构是:顺序,选择,函数.[正确的答案选项为]:F5.C程序可以有多个输入.[正确的答案选项为]:T6.C语句以分号结束.[正确的答案选项为]:T7.C语言数组中以列优先.[正确的答案选项为]:F8.double表示单精度实型.[正确的答案选项为]:F9.float型数据在内存中占2个字节.[正确的答案选项为]:F10.int表示整型.[正确的答案选项为]:T11.static是自动型变量.[正确的答案选项为]:F12.变量不能定义在函数之外.[正确的答案选项为]:F13.定义inta[][3]={1,2,3,4,5,6};是否正确?[正确的答案选项为]:T14.格式声明%d表示整型.[正确的答案选项为]:T15.函数递归就是调用该函数本身.[正确的答案选项为]:T16.函数体分为声明部分和执行部分[正确的答案选项为]:T17.库函数可以是系统提供的,也可以是用户自己编写的.[正确的答案选项为]:F18.如有:floata[10];定义是否正确?[正确的答案选项为]:T19.如有:inta[5]={1,2,3,4,5};那么a[1]=1?[正确的答案选项为]:F20.实参不能是表达式.[正确的答案选项为]:F21.实参可以是变量.[正确的答案选项为]:T22.数组的下标可以是常量,也可以是变量.[正确的答案选项为]:F23.数组元素不能作为函数的实参.[正确的答案选项为]:F24.数组中的元素的数据类型可以不相同.[正确的答案选项为]:F25.形参可以是数组名.[正确的答案选项为]:T26./*和*/不必成对使用.[正确的答案选项为]:F27.”"中只能放一个字符.[正确的答案选项为]:F28.C程序必须有一个或多个输出.[正确的答案选项为]:T29.C程序可以没有输出.[正确的答案选项为]:F30.C程序中,可以有一个主函数和若干个子函数组成.[正确的答案选项为]:T31.C语言数组下标习惯上从0开始.[正确的答案选项为]:T32.C语言中既有字符变量,也有字符常量.[正确的答案选项为]:F33.double型数据在内存中占8个字节.[正确的答案选项为]:T34.i++表示自身加1.[正确的答案选项为]:T35.m=max(a,max(b,c));书写正确吗?[正确的答案选项为]:T36.按变量的生存期可分为:动态存储和静态存储.[正确的答案选项为]:T37.变量可分为局部变量和全局变量.[正确的答案选项为]:T38.定义inta[2][]={1,2,3,4,5,6};是否正确?[正确的答案选项为]:F39.函数必须有返回值.[正确的答案选项为]:F40.函数递归调用一般用if-else实现.[正确的答案选项为]:T41.函数中的参数分为实参和形参.[正确的答案选项为]:T42.两个字符串所包含的字符个数相同时,才能比较字符串.[正确的答案选项为]:F43.如有:inta[3][4];定义是否正确?[正确的答案选项为]:T44.如有:inta[n];定义是否正确?[正确的答案选项为]:F45.实参传递给形参的可以是地址.[正确的答案选项为]:T46.实参可以是常量.[正确的答案选项为]:T47.数组的长度可以改变.[正确的答案选项为]:F48.数组元素可以作为函数的形参.[正确的答案选项为]:F49.所有的C程序都需要写在一个函数里.[正确的答案选项为]:F50.形参只能是变量.[正确的答案选项为]:F51.//表示程序结束.[正确的答案选项为]:F52.c=2*max(a,b);书写正确吗?[正确的答案选项为]:T53.C程序从主函数开
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论