关于在调用模板函数时模板实参的使用,下列表述中正确的是(  )。

  • A+
所属分类:IT认证

答案查询网公众号已于近期上线啦

除基本的文字搜题外,准备上线语音搜题和拍照搜题功能!微信关注公众号【答案查询网】或扫描下方二维码即可体验。

(1)【◆题库问题◆】:[单选] 关于在调用模板函数时模板实参的使用,下列表述中正确的是(  )。
A.对于虚拟类型参数所对应的模板实参,如果能从模板函数的实参中获得相同的信息,则都可以省略
B.对于虚拟类型参数所对应的模板实参,如果它们是参数表中的最后的若干个参数,则都可以省略
C.对于虚拟类型参数所对应的模板实参,若能够省略则必须省略
D.对于常规参数所对应的模板实参,任何情况下都不能省略

【◆参考答案◆】:D

【◆答案解析◆】:在调用一个模板函数时,编译系统需要足够的信息来判别每个虚拟类型参数所对应的实际类型,可以从两个不同的渠道获得这样的信息:从模板实参表(用“<>”括起来的参数表)或从模板函数实参表(用“()”括起来的参数表)。如果从后者获得的信息已经能够判定其中部分或全部虚拟类型参数所对应的实际参数,而且它们又正好是参数表中最后的若干参数,则模板实参表中的那几个参数可以省略。如果模板实参表中的实参都被省略了,则空表“<>”也可以不要,因此选项D错误。反之,对于某个模板实参,如果从模板函数的实参表中无法获得同样的信息,就不能省略;或者虽然能够获得同样的信息,但在它后面还有其他不能省略的实参,则其自身还是不能省略。

(2)【◆题库问题◆】:[单选] 下列关于HTML标记的说法,正确的是(  )。

【◆参考答案◆】:D

【◆答案解析◆】:D。【解析】本题考查Applet中HTML标记方法。 URLgetDocumentBase()返回包含Applet的HTML文件的 URL,而不是返回Applet主类的URL,选项A错误。URLgetC0deBase()返回Applet主类的URL,而环是返回 包含Applet的HTML文件的URL,选项B错误。StringgetParameter(stringname)返回定义在HTML文件的指定参数,如果指定参数在HTML中无说明,该方法将返回"null",而不是"0",因此选项C错误。

(3)【◆题库问题◆】:[单选] 有以下程序:main(){ int k=5,n一0;do{ switch(k){ case l:case 3:11+=1;k--;break;defalut:n=0;k--;case 2:case 4:n+=2;k--;break;printf(”%d”,n);}while(k>0&&n<5);}程序运行后的输出结果是(  )。
A.235
B.0235
C.02356
D.2356

【◆参考答案◆】:B

【◆答案解析◆】:B。【解析】本题考查分支语句用法。因为变量的初始值分别为k一5、n=0,所以程序第l次进入循环时,执行default语句,输出0,k减1;这时n=0、k=4,程序进行第2次循环,执行case4:这个分支,结果是rl=2、k=3,打印出2;这时n=2、k=3,break跳出,程序进行第3次循环,执行CaNe3:这个分支,结果是n=3、k=2,打印出3;这时n=3、k一2,break跳出,程序然后进行第4次循环,执行case2:case4:这个分支,结果是n=5、k=1,打印出5,break跳出,这时因为n=5不满足n<5的循环条件,因此循环结束。

(4)【◆题库问题◆】:[单选] 下列程序的输出结果是(  )。#include<stdio.h>main(){ int a=0,i;for(i=1;i<5:i++){ switch(i){ case 0:case 3:a+=1;case】:case 2:a=2;default:a+=3;}}printf(”%d”,a);)
A.19
B.18
C.6
D.8

【◆参考答案◆】:A

【◆答案解析◆】:A。【解析】本题考查switchcase开关语句,default退出继续循环。当i=1时,执行casel,因为没有break语句,所以依次往下运行,a=a+2-2,a=a+3=5;当i=2时,执行case2,没有break语句,所以依次往下运行,a-a+2-7,a=a+3=10;当i=3时,执行case3,当a=a+1=11,没有break语句,所以依次往下运行,a=a+2=13,a=a+3=16;当i=4时,没有case语句,则执行default,a=a十3—19, i=5不成立,循环结束。

(5)【◆题库问题◆】:[单选] 下列叙述中正确的是(  )。
A.对长度为n的有序链表进行查找,最坏情况下需要的比较次数为n
B.对长度为n的有序链表进行对分查找,最坏情况下需要的比较次数为(n/2)
C.对长度为n的有序链表进行对分查找,最坏情况下需要的比较次数为(log2n)
D.对长度为n的有序链表进行对分查找,最坏情况下需要的比较次数为(nlog2n)

【◆参考答案◆】:C

【◆答案解析◆】:分法查找只适用于顺序存储的有序表,对于长度为n的有序线性表,最坏情况只需比较log2n次。

(6)【◆题库问题◆】:[单选] 要清除已经在图片框Picturel 中打印的字符串而不清除图片框中的图像,应使用语句(  )。
A.Picture 1.Cls
B.Picture 1.Picture =LoadPicture("")
C.Picture 1.Pi nt""
D.Picture 1.Picture""

【◆参考答案◆】:A

【◆答案解析◆】:Cls 将清除打印语句在运行时所产生的文本,而清除图片应使用的语句为Picturel .Picture =LoadPicture()。

(7)【◆题库问题◆】:[单选] 有以下程序:main(){intnum]-4][4]={{1,2,3,4),{5,6,7,8),{9,10,11,12,),(13,14,15,16)},i,j;for(i=0;i<4;i4-+)( for(j=0;j<i;j++)print{(”%4c”,“);for(j=______;j<4;j++)print{(”%4d”,num[i][j]);print{(”n”);))若要按以下形式输出数组右一k半三角1 23 46 7811 1216则在程序下划线处应填人的是(  )。
A.i-1
B.i
C.i+1
D.4~i

【◆参考答案◆】:B

【◆答案解析◆】:B。【解析】本题中要求输出右上半角的数,对角线 上的数的下标相同,所以J=i。

(8)【◆题库问题◆】:[单选] 设窗体上有1个水平滚动条,已经通过属性窗V1把它的Max属性设置为1,Min属性设置为100。下面叙述中正确的是(  )。
A.程序运行时,若使滚动块向左移动,滚动条的Value属性值就增加
B.程序运行时,若使滚动块向左移动,滚动条的Value属性值就减少
C.由于滚动条的Max属性值小于Min属性值,程序会出错
D.由于滚动条的Max属性值小于Min属性值,程序运行时滚动条的长度会缩为一点,滚动块无法移动

【◆参考答案◆】:A

【◆答案解析◆】:A。【解析】滚动条是可以将Max的值设成比Min小的。这样设置的话,向左移动时Value值是增加的。

(9)【◆题库问题◆】:[单选]函数fseek()的正确调用形式是( )。
A.fseek(位移量,起始点,文件类型指针);
B.fseek(文件类型指针,位移量,起始点);
C.fseek(文件类型指针,起始点,位移量);
D.fseek(起始点,位移量,文件类型指针);

【◆参考答案◆】:B

【◆答案解析◆】: 指针函数fseek()的调用形式为:fseek (fp,offset,position);fseek函数参数说明:“fp”是指向该文件的文件型指针;“offset”为位移量,是指从起始点position到要确定的新位置的字节数。以起点为基准,向前移动字节数。“position”为起始点,指出以文件的什么位置为基准进行移动,position的值用整型常数表示,“0”表示文件的开头,“1”表示文件的当前位置,“2”表示文件的末尾。

(10)【◆题库问题◆】:[单选] 执行下述程序后,输出的结果是(  )。#include<stdio.h>#defineS(X) X*Xvoid main(){ int a=9,k=3,m=2;a/=S(k+m)/s(k+m);printf(”%d”,a);}
A.1
B.4
C.9
D.0

【◆参考答案◆】:D

【◆答案解析◆】:D。【解析】本题主要是考查带参数的宏的定义,过程如下:inta—a/S(k十m)/s(k+m)=a/(k+nl*k+m/k+m)一9/(3+2*3+2/3+2*3+2)=0。

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: