11vc交通第四章至五章.docx
- 文档编号:30719988
- 上传时间:2023-08-19
- 格式:DOCX
- 页数:20
- 大小:20.24KB
11vc交通第四章至五章.docx
《11vc交通第四章至五章.docx》由会员分享,可在线阅读,更多相关《11vc交通第四章至五章.docx(20页珍藏版)》请在冰豆网上搜索。
11vc交通第四章至五章
11vc交通第四章至五章
满分:
94分
姓名:
________
1、单项选择题(本题共计38分)
1、以下程序的输出是________。
#include
intw=3;
intfun(int);
voidmain()
{intw=10;
cout< } intfun(intk) {if(k==0)returnw; return(fun(k-1)*k); }() A、360 B、3600 C、1080 D、1200 2、以下程序的输出结果是___。 #include func(inta,intb) {staticintm,i=2; i+=m+1; m=i+a+b; return(m); } voidmain() {intk=4,m=1,p; p=func(k,m); cout< p=func(k,m); cout< }() A、8,17 B、8,16 C、8,20 D、8,8 3、下列对重载函数的描述中,________是错误的。 () A、重载函数中不允许使用默认参数 B、重载函数中编译是根据参数表进行选择的 C、不要使用重载函数来描述毫无相干的函数 D、构造函数重载将会给初始化带来多种方式 4、设有宏定义和语句: #defineP(x,y)x/y #definePP(a,b)a*b intc=P(2+3,2+3)+PP(2+3,2+3); 则变量c的值是________。 () A、26 B、17 C、17.5 D、31 5、设有宏定义和语句如下: #defineM(a,b)a*b;//E intx=M(3+,5+6),y;//F y=M(3,4);//G则() A、 编译时,E行有语法错 B、 编译时,F行有语法错 C、 编译时,G行有语法错 D、 编译时,F行和G行有语法错 6、下列有关编译预处理命令的说明中,正确的是__________。 () A、以“#”开头的行,可出现的函数定义内或函数定义外 B、以“#”开头的行,后面不可有分号 C、以“#”开头,可出现在一行中的任何位置 D、以“#”开头,必放在程序开头 7、以下四组函数原型说明中,满足C++函数重载规则的是____________。 () A、floatf(floatx);voidf(floaty); B、floatf(floatx);voidf2(floatx,floaty); C、floatf(floatx,inty);voidf(floaty); D、floatf(floaty);floatf(floaty); 8、C++语言中规定函数的返回值的类型是由________。 () A、return语句中的表达式类型所决定 B、调用该函数时的主调用函数类型所决定 C、调用该函数时系统临时决定 D、在定义该函数时所指定的函数类型所决定 9、在函数的返回值类型与返回值表达式的类型的描述中,错误的是________。 () A、函数返回值的类型是在定义函数时确定,在函数调用时是不能改变的 B、函数返回值的类型就是返回值表达式的类型 C、函数返回值表达式类型与返回值类型不同时,函数表达式类型应转换成返回值类型 D、函数返回值类型决定了返回值表达式的类型 10、若有以下函数调用语句: fun(fun(n+k,d,(a,b)),a+(x,y));在此函数调用语句中实参的个数是_______。 () A、2 B、3 C、4 D、5 11、在传值调用中,要求________。 () A、形参和实参类型任意,个数相等 B、实参和形参类型都完全一致,个数相等 C、实参和形参对应的类型一致,个数相等 D、实参和形参对应的类型一致,个数任意 12、在C++中,关于下列设置参数默认值的描述中,正确的是________。 () A、不允许设置参数的默认值 B、设置参数默认值只能在定义函数时设置 C、设置参数默认值时,应该是先设置右边的再设置左边的 D、设置参数默认值时,应该全部参数都设置 13、设有说明语句: chars[]="ab\0\123\\\n79"; strlen(s)的值是___________。 () A、2 B、3 C、8 D、14 14、设有说明语句: chars[]="ef\0\123\\\n89";sizeof(s)的值是____________。 () A、2 B、9 C、11 D、15 15、设有说明语句“intA[4][3]={{1,2},{3,4,5},{6,7,8},{9,10}};”,则A[0][2]和A[2][2]的初始化值分别为________。 () A、0、7 B、3、8 C、3、7 D、0、8 16、数组作为函数的形参时,把数组名作为实参,传递给函数的是____________。 () A、该数组的首地址 B、该数组的元素个数 C、该数组中的各元素值 D、该数组的大小 17、以下程序的输出结果是____________。 fun(inta,intb,intc) {c=a*b;} voidmain() { intc; fun(2,3,c); cout< }() A、0 B、4 C、6 D、无法确定 18、函数的功能是交换x和y中的值,且通过正确调用返回交换结果。 不能正确执行此功能的函数是____________。 () A、voidfuna(int*x,int*y) { inti,*p=&i; *p=*x;*x=*y;*y=*p; } voidmain() {intx=3,y=5; funa(&x,&y); cout< } B、voidfuna(intx,inty) { intt; t=x;x=y;y=t; } voidmain() {intx=3,y=5; funa(x,y); cout< } C、voidfuna(int*x,int*y) { intp; p=*x;*x=*y;*y=p; } voidmain() {intx=3,y=5; funa(&x,&y); cout< } D、voidfuna(int*x,int*y) { *x=*x+*y;*y=*x-*y; *x=*x-*y; } voidmain() {intx=3,y=5; funa(&x,&y); cout< } 19、在C++语言程序中,有关函数的定义正确的是____________。 () A、函数的定义可以嵌套,但函数的调用不可以嵌套 B、函数的定义不可以嵌套,但函数的调用可以嵌套 C、函数的定义和函数的调用均不可以嵌套 D、函数的定义和函数的调用均可以嵌套 20、已知一函数的形参说明为intarr[5][6],在下列说明中,与此等效的形参说明为__________。 () A、intarr[][] B、int[5][] C、int*a[6] D、int(*a)[6] 21、已知intf(int);和intg(int);分别是函数f和g的原型。 下列语句中,将函数f作为语句调用的有__________。 () A、f(3)+g(3); B、p/=f(3); C、g(f(3)); D、f(g(3)); 22、在下面的函数原型声明中,存在着语法错误的是__________。 () A、voidBC(inta,int); B、voidBD(int,int); C、voidBE(int,int=5); D、intBF(intx;inty); 23、在每个C++程序中都必须包含有这样一个函数,该函数的函数名为__________。 () A、main B、MAIN C、name D、function 24、对数组名作函数的参数,下面描述正确的是_______________。 () A、数组名作函数的参数,调用时将实参数组复制给形参数组。 B、数组名作函数的参数,主调函数和被调函数共用一段存储单元。 C、数组名作参数时,形参定义的数组长度不能省略。 D、数组名作参数,不能改变主调函数中的数据。 25、对于一个功能不太复杂,并且要求加快执行速度,选用_______________合适。 () A、内联函数 B、重载函数 C、递归调用 D、嵌套调用 26、C++中,关于参数默认值的描述正确的是_______________。 () A、只能在函数定义时设置参数默认值 B、设置参数默认值时,应当从右向左设置 C、设置参数默认值时,应当全部设置 D、设置参数默认值后,调用函数不能再对参数赋值 27、在参数传递过程中,对形参和实参的要求是_______________。 () A、函数定义时,形参一直占用存储空间。 B、实参可以是常量、变量或表达式。 C、形参可以是常量、变量或表达式。 D、形参和实参类型和个数都可以不同。 28、下列哪个不是重载函数在调用时选择的依据。 _______________() A、参数类型 B、参数个数 C、函数类型 D、函数名 29、关于函数返回值的的描述正确的是_______________。 () A、函数返回表达式的类型一定与函数的类型相同 B、函数返回值的类型决定了返回值表达式的类型 C、当函数类型与返回值表达式类型不同,将对返回值表达式的值进行类型转换 D、函数返回值类型就是返回值表达式类型 30、以下正确的说法是_______________。 () A、用户若需要调用标准函数,调用前必须重新定义 B、用户可以直接调用所有标准库函数 C、用户可以定义和标准库函数重名的函数,但是在使用时调用的是系统库函数 D、用户可以通过文件包含命令将系统库函数包含到用户源文件中,然后调用系统库函数 31、下述对C++语言字符数组的描述中错误的是________() A、字符数组可以存放字符串 B、字符数组可以整体输入,输出 C、可以在赋值语句中用赋值运算符“=”对字符数组整体赋值 D、不可以用关系运算符对数组中的字符串进行比较 32、下面描述正确的是________() A、两个字符串所包含的字符个数相同时才能比较字符串 B、字符个数多的字符串比字符个数少字符串大 C、字符串“STOp”与“STOP”相等 D、字符串“That”小于字符串“The” 33、判断字符串s1是否大于字符串s2,应当使用________() A、if(s1>s2) B、if(strcmp(s1,s2)) C、if(strcmp(s2,s1)>0) D、if(strcmp(s1,s2)>0) 34、下面程序段的运行结果是________ charc[]="\t\v\\\0will\n";cout< A、14 B、3 C、9 D、字符串中非法字符,输出值不确定 35、下面程序段的运行结果是________ chara[7]="abcdef"; charb[4]="ABC"; strcpy(a,b); cout< A、d B、\0 C、e D、f 36、以下能对二维数组a正确初始化的语句是________() A、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}}; 37、若有说明: inta[3][4];则对a数组元素的正确引用是________() A、a[2][4] B、a[1,3] C、a[1+1][0] D、a (2) (1) 38、若二维数组a有m列,则在a[I][J]前的元素个数为________() A、J*m+I B、I*m+J C、I*m+J-1 D、I*m+J+1 2、填空题(本题共计56分) 1、在C++中,字符串常量“Students”的值是________。 2、设有语句“inta[10];”,则a的值是_______。 3、以下程序的执行结果是_______。 #include intsum(int); voidmain() {ints,i; for(i=1;i<=10;i++) s=sum(i); cout<<"s="< } intsum(intk) {staticintx=0; return(x+=k); } 4、以下程序的执行结果是______。 #include f(intb[],intn) {inti,r=1; for(i=0;i<=n;i++) r=r*b[i]; returnr; } voidmain() {intx,a[]={2,3,4,5,6,7,8,9}; x=f(a,3); cout< } 5、下面程序运行后输出的结果是________。 #include voidmain() {chara[]="abcdabcabfgacd"; inti1=0,i2=0,i=0; while(a[i]) {if(a[i]=='a')i1++; if(a[i]=='b')i2++; i++; } cout< } 6、下面程序运行后输出的结果是_________。 #include voidmain() {chars[][5]={"Aafc","Bdeb","CgfD"}; intx,y; for(x=0;x<3;x++) for(y=0;y<4;y++) {intz=x+y; if(z==3) cout< } } 7、执行完 intdata[]={0,1,2,3,4,5}; #defineSIZEsizeof(data)/sizeof(data[0]) 则SIZE的值为______。 8、执行语句序列 chars1[20]="aaa",s2[20]="bbbb",s3[20]="ccccc"; strcat(s1,strcat(s2,s3)); 后s1,s2,s3的值分别是___ (1)___、___ (2)___、ccccc。 9、执行语句序列 chars1[]="ABCD",s2[]="XYZxyz"; for(inti=0;s2[i]=s1[i];i++); 后,数组s2中的字符串是_______。 10、设有语句“chars[]="China\0nanjin";intm=strlen(s);”,则m的值是________。 11、设有语句”chars[]="Rep\0Ch";intm=sizeof(s);”,则m的值是________。 12、52.若有宏定义: #defineN3 #defineY(n)((N+1)*n) 则执行语句“z=2*(N+Y(N+2));”后,z的值为__________。 13、在C++中,函数名的值是___________。 14、以下程序输出的第一行是___________,第三行是___________。 #include intfun(intn) {staticintj=1; returnj*=++n; } voidmain(void) {for(intk=1;k<=4;k++) cout< } 15、运行以下程序后输出的第二行是_________,第四行输出的是___________。 #include intf(intn,intx) {x+=1; if(n==3)returnx; elsereturnx+f(n+1,x+1); } voidmain(void) {cout< cout< cout< cout< } 16、如果一函数直接或间接地调用自身,这样的调用称为__________。 17、下面程序运行后输出的第二行是___________。 #include inta=5; voidmain() {inta=10,b=20; cout< {inta=0,b=0; for(inti=1;i<6;i++) {a+=i;b+=a;} cout< :
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 11 vc 交通 第四 章至五章