在真空中行进的单色自然光以布儒斯特角i<sub>B</sub>=

题目

在真空中行进的单色自然光以布儒斯特角iB=57°入射到平玻璃板上。下列哪一种叙述是不正确的?()

  • A、 入射角的正切等于玻璃的折射率;
  • B、 反射线和折射线的夹角为π/2;
  • C、 折射光为部分偏振光;
  • D、 反射光为平面偏振光;
  • E、 反射光的电矢量的振动面平行于入射面。
如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

以下能够正确计算n!的程序是( )。

A.Private Sub Command1_Click()

n=5: x=1

Do

x=x * I

I=I + 1

Loop While I < n

Print x

End Sub

B.Private Sub Command1_Click()

n=5: x=1: I=1

Do

x=x * I

I=I + 1

Loop While I < n

Print x

End Sub

C.Private Sub Command1_Click()

n=5: x=1: I=1

Do

x=x * I

I=I + 1

Loop While I <=n

Print x

End Sub

D.Private Sub Command1_Click()

n=5: x=1: I=1

Do

x=x * I

I=I + 1

Loop While I > n

Print x

End Sub


正确答案:C

第2题:

程序执行结果s的值是【 】.

Private Sub Command l-Click ()

I =0

Do

S= I +S

I = I + l

Loop Until I >=4

End Sub


正确答案:6
6 解析:第一次循环结束的时候:s=0,I =l
第二次循环结束的时候:s=l,I =2
第三次循环结束的时候:s=3,I =3
第四次循环结束的时候:s=6,I =4
第四次循环结束后整个循环也就结束了,所以s的最终值为6。

第3题:

执行下面的程序段,x的值为【 】。

Private Sub Command1_Click()

For i=1 To 9

a=a+i

Next

x=Val(i)

MsgBox x

End Sub


正确答案:10
10 解析:在程序中For…Next语句之后并没有对i的值改变,此时i为10,故运行后结果为10。

第4题:

下面程序的功能是统计字符串中"i"的个数,请填空。

Sub COU( )

Dim n As Integer

a$=" Beijing University of Technology"

n=Len(a$)

For i=1 To n

b$=【 】

If b$="i" Then x=x+1

Next

Print"x=" ; x

End Sub


正确答案:Mid$(a$I1)
Mid$(a$,I,1) 解析:从字符串中依次截取每一个字母看是不是i,来统计i的个数,用Mid$(字符串,p,n)函数是从第p个字符开始,向后截取n个字符。

第5题:

(8)下列这个Sub过程的功能是统计字符串中“a”的个数,请在空白处填上合适的代码,将程序补充完整。Private Sub numCount() Dim num As Integer s$="software And hardware" Num=Len(s$) For i=1 unm b$=。 If b$="a"Then x=x+1 Next i Print"x=";xEnd Sub


正确答案:Mid(s$,i,1)
【解析】分析题目和程序段可知,空白处的作用是取出字符串s中的第i个字符,这里可以使用Mid函数来取出第i个字符,然后对比该字符是否是字符a,如果是,则变量x加1,如果不是则跳过if后面的语句继续循环,最后输出x。

第6题:

有以下程序: Sub subP(b()As Integer) For i=1 To 4 b(i)=2*i Next i End Sub Private Sub Command1_Click() Dim a(1 To 4)As Integer a(i)=5 a(2)=6 a(3)=7 a(4)=8 subP a() For i=1 To 4 Print a(i) Next i End Sub 运行上面的程序,单击命令按钮,输出结果为______。

A. 2 4 6 8

B.5 6 7 8

C.10 12 14 6

D.出错


正确答案:A
解析:过程SubP的参数b()是按地址传递的(ByRef,数组的传递方式),而subP过程用语句subP a()调用后,形参b()的值为b(1)=2,b(2)=4,b(3)=6,b(4)=8,则实参a()的值亦为以上值。

第7题:

有以下程序: Sub subP(b()As Integer) For i=1 To 4 b(i)=2*i Next i End Sub Private Sub Command1_Click() Dim a(1 To 4)As Integer a(1)=5 a(2)=6 a(3)=7 a(4)=8 subPa() For i=1 To 4 Print a(i) Next i End Sub 运行上面的程序,单击命令按钮,输出结果为( )

A.2 4 6 8

B.5 6 7 8

C.10 12 14 16

D.出错


正确答案:A

第8题:

有一过程如下:

Sub Sub1(m As Integer,total As Long)

Dim i As Integer

total=1

For i=1 To m

total=total*i

Next

End Sub

调用它的事件过程如下:

Private Sub Command1_Click()

Dim tot As Long,a As Integer

a=Val(InputBox("请输入数据"))

Call Sub1(a,tot)

Print tot

End Sub

则输入数据5,运行结果为【 】。


正确答案:120
120 解析:考查考生对过程中参数传递方式的掌握情况。本题的难点是实参与形参的传递问题。total按ByRef参数传递。子过程的功能是计算n!,题中输入5,因此5!=120。参数按传值方式传递时,不改变实参中的值;按传地址的方式传递时,实参和形参指向的内容被改变。

第9题:

阅读程序: Sub p( b () As Integer)For i =1To 4 b(i) = 2(iNext i End Sub Private Sub Command1_Click()Dim a (1 To 4) As Integer a(1)=5 a(2)=6 a(3)=7 a(4)=8 call p (a) For i=1 To 4 Print a(i) Next iEnd Sub运行上面的程序,单击命令按钮,输出结果为。


正确答案:2 4 6 8
【解析】本题综合考查Sub过程的建立与调用以及数组的赋值。P过程为参数b()赋值,赋值方法为b()中的元素值等于其下标的2倍。在事件过程中,数组a(1 to 4)先被逐一赋值,然后以传地址的方式被p过程调用。在调用中,a(i)被重新按照p过程的赋值方式(即元素值等于对应下标值的2倍)赋值。由于是以传地址的方式传送a(1 to 4),故在调用完p过程后,a(1 to 4),故在调用完p过程后,a(1 to 4)中的元素值将保留,故空白处填:2 4 6 8。

第10题:

在窗体中添加一个名称为Command1的命令按钮,然后编写如下程序:

Private Sub f(ByVal x As Integer)

x=x+4

End Sub

Private Sub Command1_Click()

i=3

Call f(i)

If i>4 Then i=i*2

End Sub

窗体打开运行后,单击命令按钮,则消息框的输出结果为( )。


正确答案:3
3 解析: 本题考查VBA中参数传递的知识。在VBA的过程调用时,参数有两种传递方式:传址传递和传值传递。如果在过程声明时形参用ByVal声明,说明此参数为传值调用;若用ByRef声明,说明此参数为传址调用;没有说明传递类型,则默认为传址传递。本题中在定义子过程f的时候用ByVal声明了形参x,说明为传值调用,此时对x的任何更改不会影响调用它的实参i,所以执行完callf(i)这条语句后i的值不变仍为3,当然也不满足If语句的条件,故此最后输出结果为3。

更多相关问题