C语言补充习题

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

补充习题一、单选题1、下列语句中,符合语法的赋值语句是。CA)a=7+b+c=a+7;B)a=7+b++=a+7;C)a=(7+b,b++,a+7);D)a=7+b,c=a+7;2、对于charcx='\039';语句,正确的是。AA)不合法B)cx的ASCII值是33C)cx的值为四个字符D)cx的值为三个字符3、以下所列的C语言常量中,错误的是。BA)0xFFB)1.2e0.5C)2LD)‘\72’4、有输入语句:scanf(“a=%d,b=%d,c=%d”,&a,&b,&c);为使变量a的值为1,b的值为3,c的值为2,则正确的数据输入方式是。DA)132↙B)1,3,2↙C)a=1b=3c=2↙D)a=1,b=3,c=2↙5、逻辑运算符两侧运算对象的数据类型。DA)只能是0或1B)只能是0或非0正数C)只能是整型或字符型数据D)可以是任何类型的数据6、C语言对嵌套if语句的规定是:else总是与。DA)其之前最近的if配对B)第一个if配对C)缩进位置相同的if配对D)其之前最近的且尚未配对的if配对7、设:inta=1,b=2,c=3,d=4,m=2,n=2;执行(m=ab)&&(n=cd)后n的值为。BA)1B)2C)3D)48、以下程序段的循环次数是。Bfor(i=2;i==0;)printf(“%d”,i--);A)无限次B)0次C)1次D)2次9、循环语句的循环体中执行continue语句,其作用是。CA)立即终止程序运行B)继续执行continue语句之后的循环体各语句C)结束本次循环D)结束本次循环,跳出循环10、以下正确的说法是。AA)实参和与其对应的形参各占用独立的存储单元B)实参和与其对应的形参共占用一个存储单元C)只有当实参和与其对应的形参同名时才共占用相同的存储单元D)形参时虚拟的,不占用存储单元11、以下正确的描述是。BA)函数的定义可以嵌套,但函数的调用不可以嵌套B)函数的定义不可以嵌套,但函数的调用可以嵌套C)函数的定义和函数的调用均不可以嵌套D)函数的定义和函数的调用均可以嵌套12、若用数组名作为函数调用的实参,传递给形参的是。AA)数组的首地址B)数组中第一个元素的值C)数组中的全部元素的值D)数组元素的个数13、若有定义和语句int**pp,*p,a=10,b=20;pp=&p;p=&a;p=&b;printf(%d\n,*p,**pp);则输出结果是:。DA)10,20B)10,10C)20,10D)20,2014、以下不正确的说法是。BA)形参的存储单元是动态分配的B)函数中的局部变量都是动态存储C)全局变量都是静态存储D)动态分配的变量的存储空间在函数结束调用后就被释放了15、以下正确的函数首部是。AA)doublefun(intx,inty)B)doublefun(intx;inty)C)doublefun(intx,inty);D)doublefun(intx,y)16、以下不正确的说法是。DA)在不同函数中可以使用相同名字的变量B)形式参数是局部变量C)在函数内定义的变量只在本函数范围内有定义D)在函数内的复合语句中定义的变量在本函数范围内有定义17、以下不正确的说法是。DA)全局变量、静态变量的初值是在编译时指定的B)静态变量如果没有指定初值,则其初值为0C)动态局部变量如果没有指定初值,则其初值不确定D)函数中的静态变量在函数每次调用时,都会重新设置初值18、已知一个函数的定义如下:doublefun(intx,doubley){……}则该函数正确的函数原型声明为。CA)doublefun(intx,doubley)B)fun(intx,doubley)C)doublefun(int,double);D)fun(x,y);19、在说明语句:int*f();中,标识符f代表的是。DA)一个用于指向整型数据的指针变量B)一个用于指向一维数组的行指针C)一个用于指向函数的指针变量D)一个返回值为指针型的函数名20、若有定义:inta[10],则对数组a元素的正确引用是。DA)a[10]B)a[3.5]C)a(5)D)a[10-10]21、若有定义:inta[3][4],则对数组a元素的正确引用是。AA)a[2][3]B)a[1,3]C)a(5)D)a[10-10]22、以下能对二维数组a进行正确初始化的语句是。BA)inta[2][]={{1,0,1},{5,2,3}};B)inta[][3]={{1,2,3},{4,5,6}};C)inta[2][4]={{1,2,3},{4,5},{6}};D)inta[][3]={{1,0,1},{},{1,1}};23、若要用fopen函数打开一个新的二进制文件,该文件既要能读也能写,则文件打开方式字符串应是。A)“ab+”B)“w+”CC)“rb+”D)“ab”24、若有说明:inta[3][4]={0};则下面正确的叙述是。DA)只有元素a[0][0]可得到初值0B)此说明语句不正确C)数组a中各元素都可得到初值,但其值不一定为0D)数组a中每个元素均可得到初值025、变量的指针,其含义是指该变量的。BA)值B)地址C)名D)一个标志26、若有说明:int*p1,*p2,m=5,n;以下均是正确赋值语句的选项是。CA)p1=&m;p2=&p1;B)p1=&m;p2=&n;*p1=*p2;C)p1=&m;p2=p1;D)p1=&m;*p1=*p2;27、下面程序段的运行结果是。char*s=”abcde”;s+=2;printf(“%d”,s);CA)cdeB)字符’c’C)字符’c’的地址D)不确定28、p1和p2是指向同一个字符串的指针变量,c为字符变量,则以下不能正确执行的赋值语句是。BA)c=*p1+*p2B)p2=cC)p1=p2D)c=*p1*(*p2)29、若有定义:inta[5];则a数组中首元素的地址可以表示为。CA)&aB)a+1C)aD)&a[1]30、如下说明语句,则下面叙述不正确的是。Cstructstu{inta;floatb;}stutype;A)struct是结构体类型的关键字B)structstu是用户定义结构体类型C)stutype是用户定义的结构体类型名D)a和b都是结构体成员名31、设struct{inta;charb;}Q,*p=&Q;错误的表达式是。DA)Q.aB)(*p).bC)p-aD)*p.b32、若执行fopen函数时发生错误,则函数的返回值是。DA)地址值B)0C)1D)EOF二、填空题1、若a是int变量,则执行表达式a=25/3%3后,a的值是。22、复合语句是用一对界定的语句块。{}3、一般地,调用标准字符或格式输入输出库函数时,文件开头应有命令。#includestdio.h4、将条件“x、y符号相同”写成逻辑表达式。x0&&y0||x0&&y0或x*y05、若有x=1,y=2,z=3,则表达式(xy?x:y)==z++的值是。06、有定义语句:chars[]=abcdef;则数组s有个元素。77、有intx=3,y=-4,z=5;则表达式(x&&y)==(x||z)的值为。18、在一个函数内部调用另一个函数的调用方式称为。嵌套调用9、在一个函数内部直接或间接调用该函数成为函数的调用方式。递归调用10、C语言变量按其作用域分为和。按其生存期分为和。全局变量局部变量静态变量动态变量11、已知函数定义:voiddothat(intn,doublex){……},其函数声明的两种写法为,。voiddothat(intn,doublex);voiddothat(int,double);12、C语言规定:函数返回值类型是由:。义该函数时所指定的函数类型决定13、凡在函数中未指定存储类别的局部变量,其默认的存储类别为。auto14、在一个C程序中,若要定义一个只允许本源程序文件中所有函数使用的全局变量,则该变量需要定义的存储类别为。static15、在C语言中,二维数组的元素在内存中的存放顺序是。按行存储16、有如下定义:struct{intx;inty;}s[2]={{2,2},{3,4}},*p=s;则:表达式++p-x的结果是。317、欲将字符串s1复制到字符串s2中,其语句是。strcpy(s2,s1);18、字符串:“ab\n\\012\\”的长度是。819、设inta[10]={1,2,3};则*(a+3)的值是_________。020、若有以下定义,则不移动指针p,且通过指针p引用值为98的数组元素的表达式是_____________。*(p+5)或p[5]intw[10]={23,54,10,33,47,98,72,80,61},*p=w;21、若有定义:inta[2][3]={2,4,6,8,10,12};则*(&a[0][0]+2*2+1)的值是。1222、设structstudent{intno;charname[12];floatscore[3];}sl,*p=&sl;用指针法给sl的成员no赋值1234的语句是_________。p-no=1234;23、feof(fp)函数用来判断文件是否结束,如果遇到文件结束,函数值为,否则为。1024、在对文件进行操作的过程中,若要求文件的位置回到文件的开头,应当调用的函数是________。rewind()25、当定义一个结构体变量时,系统分配给该变量的内存大小等于各成员所需内存大小的。总和26、若p指向x,则与x的表示是等价的。*p27、如果一个变量在整个程序运行期间都存在,但是仅在说明它的函数内是可见的,这个变量的存储类型应该被说明为。static28、计算a、b中最小值的条件表达式为。ab?a:b29、执行语句“a=5+(c=6);”后,变量a、c的值依次为。11,630、已知intj,i=1;则执行j=-i++;语句后,变量i和j的值为。2,-131、设chars[15]=(programming);,则printf(%d\n,strlen(s));的结果是。1132、设chara[20]={Switch},*p=a:,则p[2]的值是___________。i

1 / 4
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功