C语言试题选择题及答案.pdf
- 文档编号:3212719
- 上传时间:2022-11-20
- 格式:PDF
- 页数:30
- 大小:120.90KB
C语言试题选择题及答案.pdf
《C语言试题选择题及答案.pdf》由会员分享,可在线阅读,更多相关《C语言试题选择题及答案.pdf(30页珍藏版)》请在冰豆网上搜索。
第1题:
阅读程序,选择程序的运行结果_A_。
#includemain()intx;x=try(5);printf(“%dn”,x);try(intn)if(n0)return(n*try(n-2);elsereturn
(1);A.15B.120C.1D.前面3个答案均是错误的第2题:
在下列结论中,只有一个是正确的,它是_A_。
A.递归函数中的形式参数是自动变量B.递归函数中的形式参数是外部变量C.递归函数中的形式参数是静态变量D.递归函数中的形式参数可以根据需要自己定义存储类型第3题:
阅读程序,选择程序的输出结果_A_。
#includef(intx,inty)return(y-x);main()int(*g)(int,int);inta=5,b=6,c=2;g=f;c=(*g)(a,b);printf(“%dn”,c);A.1B.2C.3D.前面3个答案均是错误的第4题:
阅读程序,选择程序的输出结果_D_。
#includechar*p=”abcdefghijklmnopq”;main()while(*p+!
=e);printf(“%cn”,*p);A.cB.dC.eD.f第6题:
阅读程序,选择程序的输出结果_D_。
#includevoidprtv(int*x)printf(”%dn”,+*x);main()inta=25;prtv(&a);A.23B.24C.25D.26第7题:
阅读程序,选择程序的输出结果_B_。
#includemain()staticchara=”language”,b=”program”;char*ptr1=a,*ptr2=b;intk;for(k=0;k7;k+)if(*(ptr1+k)=*(ptr2+k)printf(”%c”,*(ptr1+k);A.gaeB.gaC.languageD.有语法错误第8题:
函数调用strcat(strcpy(str1,str2),str3)的功能是_C_。
A.将串str1复制到串str2中,然后再连接到str3之后B.将串str1连接到串str2之后,再复制到str3之中C.将串str2复制到串str1中,然后再将串str3连接到串str1之后D.将串str2复制到串str1中,再将串str1连接到str3之后第9题:
设有以下程序段,则在main函数中使用语句_D_是无意义的。
main()intmin();inta,b,c,(*p)();p=min;min(x,y)intx,y;A.printf(”%dn”,min(a,b);B.c=min(a,b);C.c=(*p)(a,b);D.p+;第10题:
已知staticinta23=2,4,6,8,10,12;正确表示数组元素地址的是_A_。
A.*(a+1)B.*(a1+2)C.a1+3D.a00第11题:
已知inti,x34;则不能将x11的值赋给变量i的语句是_C_。
A.i=*(*(x+1)+1)B.i=x11C.i=*(*(x+1)D.i=*(x1+1)第12题:
当c的值不为0时,在下列选项中能够将c的值赋给变量a、b的是_C_.A.c=b=a;B.(a=c)|(b=c);C.(a=c)&(b=c);D.a=c=b;第13题:
函数的功能是交换变量x和y中的值,且通过正确调用返回交换的结果。
能正确执行此功能的函数是_D_。
A.funa(int*x,int*y)int*p;*p=x;*x=*y;*y=*p;B.funb(intx,inty)intt;t=x;x=y;y=t;C.func(int*x,int*y)*x=*y;*y=*x;D.fund(int*x,int*y)*x=*x+*y;*y=*x-*y;*x=*x-*y;第14题:
已知intx=1,3,5,7,9,11,*ptr=x;则不能正确引用数组元素的语句是_B_。
A.*(ptr-)B.*(-ptr)C.*(ptr+)D.*(+ptr)第15题:
已知int*ptr1,*ptr2;均指向同一个int类型一维数组中的不同元素,k为int类型变量,则下面错误的赋值语句是_B_。
A.k=*ptr1+*ptr2;B.ptr2=k;C.ptr1=ptr2;D.k=*ptr1*(*ptr2);第16题:
已知chars110,*s2=”ab0cdef”;则执行语句strcpy(s1,s2);后,变量s1的内容为_A_。
A.abB.cdefC.ab0cdefD.内容不定第17题:
以下有关宏替换叙述中,错误的是_D_。
A.宏替换不占用运行时间B.宏无类型名C.宏替换只是字符替换D.宏名必须用大写字母表示第18题:
C语言主函数main最多允许有_B_个参数。
A.1B.2C.0D.3第19题:
C语言的编译系统对宏定义是_D_。
A.在程序运行时进行替换处理B.在程序连接时进行处理C.和源程序中其他C语句同时进行编译的D.在对源程序中其他成分正式编译之前进行处理的第20题:
已知int*p;则变量p是_B_。
A.指向int的指针B.指向指针的指针C.int型变量D.以上3种说法均是错误的第21题:
已知inti;char*s=”a045+045b”;执行语句for(i=0;*s+;i+);之后,变量i的结果是_B_。
A.7B.8C.9D.以上3个答案都是错误的第22题:
已知inti=0,j=1,*p=&i,*q=&j;错误的语句是_D_。
A.i=*&j;B.p=&*&i;C.j=*p+;D.i=*&q;第23题:
已知inta=1,2,3,4,5,6,7,8,9,10,11,12,*p=a;则值为3的表达式是_A_。
A.p+=2,*(p+)B.p+=2,*+pC.p+=3,*p+D.p+=2,+*p第24题:
已知inta34,*p=a;p+=6;那么*p和_D_的值相同。
A.*(a+6)B.*(&a0+6)C.*(a1+2)D.*(&a00+6)第25题:
已知inta43=1,2,3,4,5,6,7,8,9,10,11,12;int(*ptr)3=a,*p=a0;则以下能够正确表示数组元素a12的表达式是_D_。
A.*(ptr+1)2)B.*(*(p+5)C.(*ptr+1)+2D.*(*(a+1)+2)第26题:
已知char*s;正确的语句是_B_。
A.s=”computer”;B.*s=”computer”;C.*s=”computer”;D.*s=A;第27题:
已知chars20=”programming”,*ps=s;则不能引用字母o的表达式是_A_。
A.ps+2B.s2C.ps2D.ps+=2,*ps第28题:
已知charb5,*p=b;则正确的赋值语句是_C_。
A.b=”abcd”;B.*b=”abcd”;C.p=”abcd”;D.*p=”abcd”;第29题:
已知chars100;inti;则在下列引用数组元素的语句中,错误的表示形式是_D_.A.si+10B.*(s+i)C.*(i+s)D.*(s+)+i)第30题:
已知chars10,*p=s;则下列语句中,错误的语句是_B_。
A.p=s+5;B.s=p+s;C.s2=p4D.*p=s0;第31题:
(103)以下程序的输出结果是_D_。
#includemain()intx=10,y=10;printf(“%d%dn”,x-,-y);A.1010B.99C.910D.109第32题:
已知double*p6;它的含义是_C_。
A.p是指向double类型变量的指针B.p是double类型数组C.p是指针数组D.p是数组指针第33题:
说明语句int*(*p)();的含义是_D_。
A.p是一个指向int型数组的指针B.p是指针变量,它构成了指针数组C.p是一个指向函数的指针,该函数的返回值是一个整型D.p是一个指向函数的指针,该函数的返回值是一个指向整型的指针第34题:
已知inta,*p=&a;则下列函数调用中错误的是_D_。
A.scanf(”%d”,&a);B.scanf(”%d”,p);C.printf(”%d”,a);D.printf(”%d”,p);第35题:
已知int*p,a;则语句p=&a;中的运算符&的含义是_D_。
A.位与运算B.逻辑与运算C.取指针内容D.取变量地址第36题:
下面程序的功能是将字符串s中所有的字符“c”删除。
请选择填空。
#includemain()chars80;inti,j;gets(s);for(i=j=0;si!
=0;i+)if(si!
=c)_A_sj!
=0;puts(s);A.sj+=si;B.s+j=si;C.sj=si;j+;D.sj=si第37题:
阅读下列程序,选择程序的运行结果_B_。
#includemain()inti,k,a10,p3;k=5;for(i=0;i10;i+)ai=i;for(i=0;i3;i+)pi=ai*(i+1);for(i=0;i3;i+)k+=pi*2;printf(“%dn”,k);A.20B.21C.22D.23第38题:
下述程序的输出结果是_A_。
#includemain()printf(“%f”,2.5+1*7%2/4);A.2.500000B.2.750000C.3.375000D.3.000000第39题:
下面程序的输出结果是_B_。
#includemain()printf(“%dn”,NULL);A.-1B.0C.1D.程序是错误的第40题:
在下面的程序段中,每行前面的数字表示行号,则下面程序_D_。
1main()23inta3;4inti;5for(i=0;i3;i+)scanf(“%d”,&ai);6for(i=1;i3;i+)a0=a0+ai;7printf(“%fn”,a);8A.没有错误B.第5行有错误C.第6行有错误D.第7行有错误第41题:
在下面的程序段中,每行前面的数字表示行号,则下面程序_C_。
1main()23floata10;4inti;5for(i=0;i3;i+)scanf(“%d”,&ai);6for(i=1;is2)B.if(strcmp(s1s2)C.if(strcmp(s2s1)0)D.if(strcmp(s1s2)0)第45题:
已知chara20,b20;则以下正确的输入语句是_B_。
A.gets(a,b);B.scanf(“%s%s”,a,b);C.scanf(“%s%s”,&a,&b);D.gets(“a”),gets(“b”);第46题:
若二维数组a由m列,则在aij之前的元素个数为_B_。
A.j*m+iB.i*m+jC.i*m+j-1D.i*m+j+1第47题:
下列数组说明语句中错误的是_B_。
A.doublex5=2.0,4.0,6.0,8.0,10.0;B.inty5=0,1,3,5,7,9;C.charc1=1,2,3,4,5;D.charc2=x10,xa,x8;第48题:
在C语言中,二维数组元素在内存中的存放顺序是_A_。
A.按行存放B.按列存放C.由用户自己定义D.由编译器决定第49题:
已知staticinta34;则数组a中个元素_B_。
A.可在程序的运行阶段得到初值0B.可在程序的编译阶段得到初值0C.不能得到确定的初值D.可在程序的编译或运行阶段得到初值0第50题:
语句typedeflongclass的作用是_D_。
A.建立了一种新的数据类型B.定义了一个整型变量C.定义了一个长整型变量D.定义了一个新的数据类型标识符第51题:
已知staticinta34=0;则下面正确的叙述是_D_。
A.只有元素a00可以得到初值0B.此说明语句是错误的C.数组a中每个元素都可得到初值,但其值不一定为0D.数组a中每个元素均可得到初至0第52题:
以下能对外部的二维数组a进行初始化错误的语句是_C_。
A.inta23=0;B.inta3=1,2,0;C.
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 试题 选择题 答案