已知方案A、B、C,其投资K<sub>A</sub>< K<su

题目

已知方案A、B、C,其投资KA< KB< KC,设这些投资方案的差额投资回收期PA-B基准,PB-C基准,PA-C基准。则方案从优到劣的排列顺序为()。

  • A、A-B-C
  • B、B-A-C
  • C、C-A-B
  • D、B-C-A
参考答案和解析
正确答案:D
如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

阅读以下程序:

Private Sub Form_click()

Dim k, n, m As integer

n = 20

m = 1

k = 1

Do While k <= n

m=m+2

k = k + 1

Loop

Print m

End Sub

单击窗体程序的执行结果是【 】。


正确答案:41
41 解析:本题的循环体共要执行20次,m的最终值为1+2*20=41。

第2题:

某个窗体己编写以下事件过程。打开窗体运行后,单击窗体,消息框的输出结果为【 】。

Private Sub Form_Click()

Dim k as Integer, n as Integer,m as Integer

n=10 :m=1 : k=1

Do While k<=n

m=m*2

k=k+1

Loop

MsgBox m

End Sub


正确答案:1024
1024 解析:本题考查考生对VBA中控制结构的掌握。考生应该重点掌握VBA的控制结构,本题中的Do While…Loop循环结构是考试重点内容。在题目所给程序中,第一次循环结束后,m=1*2=2,即21;第二次循环结束后, m=2*2=4,即22;可见每次循环都使得m变为原来大小的2倍。因为k的初始值为1,终止条件为k=10,所以循环一共可以执行10次,因此m最后的值应该为210,即1024。

第3题:

下面程序运行后,窗体中显示【 】。

Private Sub Command1_Click) ( )

aS ="*" :b$ ="$"

For k = 1 To 3

x$ =Strings (Len(a$) +k,b$ )

Print x $;

Next

Print

End Sub


正确答案:$$$$$$$$$
$$$$$$$$$ 解析:本题的难点是了解生成字符函数String$()和计算字符函数Len(),a $="*"的作用只是被用来计算字符串的长度,没有被打印出来。打印分隔符为“;”时,字符串之间没有空格。空打印Print操作是换行。

第4题:

执行下面的程序,消息框里显示的结果是 【 】 。

Private Sub Form_Click()

Dim Str As String, K As Integer

Str="ab"

For k=Len(Str) TO 1 Step-1

Str=Str & Chr(Asc(Mid(Str,k,1))+k)

Next k

MsgBox Str

End Sub


正确答案:abdb
abdb 解析:本题考查VBA程序设计。题目较难,综合性强,要求考生对常用函数以及控制结构有一定的了解。考生应该了解Len()函数是字符串长度检测函数,返回字符串所含字符数。 Chr()函数是字符代码转换字符函数,将数值表达式转换成字符串。Asc()函数是字符串转换字符代码函数,返回字符串首字符的ASCII值。 Mid(字符串表达式>,N1>,N2>)函数是从字符串左边第N1个字符起截取N2个字符。开始Len(Str0=2,Mid(Str,k,1)=Mid(ab,2,1)=b,则Chr(Asc(B) +2)=d,所以循环第1次结束后 Str="abd",同样的第2次循环结束后, Str="abdb",MsSBox用来将Str输出。正确答案为abdb。

第5题:

在窗体中添加一个命令按钮和一个文本框,并编写如下程序代码: Private Sub Command1_Click() k=0 Do While k < 70 k=k+2 k=k*k+k a=a+k Loop Text1.Text=a End Sub 程序运行后,文本框中显示的是

A.20

B.32

C.44

D.78


正确答案:D
解析:第1次执行循环体,k=(0+2)×(0+2)+(0+2)=6,a=0+6=6;第2次执行循环体,k=(6+2)×(6+2)+(6+2)=72,a=6+72=78:第3次测试循环条件时,7270为假,终止循环。

第6题:

以下程序的输出结果是【 】。

main()

{ int x=0;

sub(&x,8,1);

printf(“%d\n”,x);

}

sub(int *a,int n,int k)

{ if(k<=n)sub(a,n/2,2*k);

*a+=k;

}


正确答案:7
7 解析:在主函数中定义了一个变量x并赋初值0,然后执行函数调用语句,该语句的执行过程为sub(&x,8,1)调用sub(&a,4,2),sub(&a,4,2)调用sub(&a,2,4),sub(&a,2, 4)中由于24,所以if后面括号里的判断为假,递归结束,执行其后的*a+=k;语句此时 x=x+k=0+4=4,回退到上一层调用函数sub(&x,4,2)中,执行后面的语句,x=x+k= 4+2=6,再回推到最上一层调用函数sub(&x,8,1)执行后面的语句,x=x+k=6+1=7,所以最后输出7。

第7题:

下列程序的运行机结果是【 】。

Private Sub Form_ Click()

Dim k As Integer

n= 5

m= 1

k= 1

Do

m=m+2

k= k+1

Loop While k<=n

Print m

End Sub


正确答案:11
11

第8题:

阅读下列程序。

Option Base 1

Private Sub Form. Click()

Dim x(3,3)

For j=l to 3

For k=l to 3

If j=k then x(j,k)=l

If j<>k then x(j,k)=k

Next k

Next j

Call fun(x())

End Sub

Private Sub fun(x() )

For j=1 to 3

For k=1 to 3

Print x(j,k);

Next k

Next j

End Sub

运行程序时,输出结果为【 】


正确答案:1 2 311 3 1 21
1 2 311 3 1 21 解析:本题考查考生对数组虚实结合掌握的情况。事件过程声明了一个二维数组,并利用循环产生3*3数组,由题干可知,该数组对角线元素全部为1,其余元素为3。调用fun过程时,采用了虚实结合的方法,然后执行该过程。在过程中访问x数组就是事件过程中的数组,优先输出了x数组的所有元素值,由于在输出时执行了Print x(j,k),并且输出数据语句后有分号,因此只输出一行。

第9题:

下面程序的输出结果是( )。 #include"stdio.h" int sub(int m) { static a=4; a+=m; return a; } void main() { int i=2,j=1,k; k=sub(i); k=sub(j); printf("%d",k); }

A.6

B.7

C.8

D.9


正确答案:B
解析:在函数sub()的函数体中定义了一个静态存储变量a,a的值在函数调用完毕返回主函数后仍存在。第一次调用sub(i),a=a+m=4+2=6,返回值为6。第二次调用sub(j),a=a+m=6+1=7,返回值为7,最后输出k的值为7。

第10题:

以下程序的输出结果是( )。 include main()fint x=0; sub(&x,16,2); printf("%d\n",

以下程序的输出结果是( )。

include<stdio.h>

main()

fint x=0;

sub(&x,16,2);

printf("%d\n",x);

}

sub(int*a,int n,int k)

{if(k<=n) sub(a,n/2,2*k);

*a+=k;

}


正确答案:14
14 解析:本题考查递归函数的调用。在主函数中调用sub(&x,16,2)函数,此时n=16,k=2,if语句的控制的条件k=n成立,所以执行下面的语句,调用sub(x,8,4),此时n=8,k=4,if语句的控制条件k=n成立,所以执行下面的语句,调用sub(x,4,8),此时n=4,k=8,if语句控制的条件k=n不成立,因此,最后得x=2+4+8=14。

更多相关问题