资源描述:
《c程序设计第3-4章练习题有答案》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、第3・4章练习题一、选择题1.以下错误的字符串赋值或赋初值方式是:(A)charstrl[]=,,string,str2[]=,,12345678,,;strcpy(str2,strl);(B)charstr[7]={,sVt,rVi,n,g,};(C)charstr[10];str=MstringM;(D)char*str;str=,,string,,52.数组定义中不正确的是:(A)inta[2][3];(B)intb["3]={0,1,2,3};(C)intc[100][100]={0};(D)intd[3][]={{l,2},{l,2,3},{l,2,3,4}}
2、;3・以下对一维数组a正确初始化的是:(A)inta[10J=(0,0,0,0,);(B)inta[10J={};(C)inta[10]={0};(D)inta[10]=(10*2);4•以下选项中,不能正确赋值的是:(A)charsl[10];sl=HCtestH;(B)chars2[]={fCT,V,T};(C)chars3[20]=MCtestH;(D)char*s4=nCtestM5•若有说明:inti,j=2,*p=&i;,则能完成i=j赋值功能的语句是:(A)i=*p;(B)*p=*&j;(C)i=&j;(D)i=**p;6.下面各语句行中,不能正确进行字符串
3、操作的语句行是:(A)charst[10]={nabcden};(B)chars[5]={,ayb*;c,;d,;e,};(C)char*s;s=nabcdeM;(D)char*s;scanf(n%sn,s);7•设有如下的程序段,执行上面的程序段后,*(ptr+5)的值为:charstr[]=,'Hello,';char*ptr;ptr=str;(A)W(B)AO*(C)不确定的值(D)V的地址&请选出以下语句的输出结果printf(u%d,,,strlen(,,tH 65xffn));(A)5(B)14(08(D)输出项不合法,无正常输出9•以下程序段给数组
4、所有的元素输入数据,请选择正确答案填入。main(){inta[101,i=0;while(i<10)scanf(M%dM,);!}(A)a+(i++)(B)&a[i+1](C)a+i(D)&a[++i]10•若有以下说明和语句,请选出哪个是对c数组元素的正确引用intc[10],*cp;cp=c;(A)cp+1(B)*(cp+3)(C)**(cp+l)+3(D)*(*cp+2)11.设有如下一段程序,执行下面的程序后,ab的值为:int*var,ab;ab=100;vai•二&ab;ab=*var+10;(A)120(B)110(C)100(D)9012•若有以下定义:int
5、a[10],*p二a;贝!jp+4表示A)元素a[4]的地址B)元素a[4]的值C)元素a[5]的地址D)元素a[5]的值13.判断字符串si是否小于字符串s2,应当使用A)if(slvs2)B)if(strcmp(sl,s2))C)if(strcpy(sl,s2)<0)D)if(strcmp(sl,s2)<0)14・以下数组定义中不正确的是A)inta[3][4];B)intb[]⑶二{{1,2,3},{4,5,6}};C)intc[3][4]={0};D)intd[2][]={{1,0,0},{0,1,0}};15•在下面的定义语句中,错误的是A)intn=20,a[n];
6、B)char*a[3];C)chars[20]=ntestH;D)inta[]={l,2};16•对C语言字符数组的描述中错误的是:A)字符数组可以存放字符串。B)字符数组的字符串可以整体输入输出。C)可以在赋值语句中通过赋值运算符对字符数组整体赋值。D)不可以用关系运算符对字符数组中的字符串进行比较。17•设有以下说明语句:structstu{inta;floatb;}stutype;则下面的叙述不正确的是:A)struct是定义结构体类型的关键字。C)stutype是用户定义的结构体类型名。B)structstu是用户定义的结构体类型。D)a和b都是结构体成员名。二、写出程
7、序运行结果。1.main()4{char*p=Habcd efgh H;printf(M%dn,strlen(p));2.main()56789{charsss[][20]={,,1234n,,,56789nb*p=sss;printf(n%s'p+20);3.main()Hello{charbUiHelkbyoiT;b[5]=b[9];printf(H%sH,b);4.main()6{intair[]={40,30,25,35,12,6,8},*p=arr;p++;printf(