niusouti.com

为计算a“的值,某人编写了函数power如下:Private Function power(a As Integer,n As Integer)As LongDim P As LongP=aFor k=l T0 nP=P * aNext kpoWer=PEnd Function在调试时发现是错误的,例如Print power(5,4)的输出应该是625,但实际输出是3125。程序需要修改。下面的修改方案中有3个是正确的,错误的一个是A.把For k=1 To n改为For k=2 To nB.把P=P*a

题目

为计算a“的值,某人编写了函数power如下:

Private Function power(a As Integer,n As Integer)As Long

Dim P As Long

P=a

For k=l T0 n

P=P * a

Next k

poWer=P

End Function

在调试时发现是错误的,例如Print power(5,4)的输出应该是625,但实际输出是3125。程序需要修改。下面的修改方案中有3个是正确的,错误的一个是

A.把For k=1 To n改为For k=2 To n

B.把P=P*a改为P=p^n

C.把Fork=1 To n改为For k=1 To n-1

D.把P=a改为P=1


相似考题
参考答案和解析
正确答案:C
解析:计算an应该循环n次,所以此处k的取值应为1 to n,而非n-1。
更多“为计算a“的值,某人编写了函数power如下:Private Function power(a As Integer,n As Integer)As L ”相关问题
  • 第1题:

    下列程序的运行结果为______。 #define MS DOS #ifdef MS DOS #define INTEGER SIZE 32 #else #define INTEGER SIZE 16 #endif main () { printf ("integer_size=%d\n", INTEGER_SIZE); }

    A.integersize=32

    B.integer_size=16

    C.integersize=32,integer_size=16

    D.错误


    正确答案:A

  • 第2题:

    四、排序算法

    A.快速排序:

    procedure qsort(l,r:integer);

    var i,j,mid:integer;


    正确答案:

     

    begin
    i:=l;j:=r; mid:=a[(l+r) div 2]; {将当前序列在中间位置的数定义为中间数}
    repeat
    while a[i]<mid do inc(i); {在左半部分寻找比中间数大的数}
    while a[j]>mid do dec(j);{在右半部分寻找比中间数小的数}
    if i<=j then begin {若找到一组与排序目标不一致的数对则交换它们}
    swap(a[i],a[j]);
    inc(i);dec(j); {继续找}
    end;
    until i>j;
    if l<j then qsort(l,j); {若未到两个数的边界,则递归搜索左右区间}
    if i<r then qsort(i,r);
    end;{sort}

  • 第3题:

    链表的定位函数

    loc(I:integer):pointer; {寻找链表中的第I个结点的指针}

    procedure loc(L:linklist; I:integer):pointer;

    var p:pointer;

    j:integer;


    正确答案:

     

    begin
    p:=L.head; j:=0;
    if (I>=1) and (I<=L.len) then
    while j<I do begin p:=p^.next; inc(j); end;
    loc:=p;
    end;

  • 第4题:

    素数的求法

    A.小范围内判断一个数是否为质数:

    function prime (n: integer): Boolean;

    var I: integer;


    正确答案:

     

    begin
    for I:=2 to trunc(sqrt(n)) do
    if n mod I=0 then begin
    prime:=false; exit;
    end;
    prime:=true;
    end;

  • 第5题:

    排列的生成:(1..n)

    procedure solve(dep:integer);

    var

    i:integer;


    正确答案:

     

    begin
    if dep=n+1 then begin writeln(s);exit; end;
    for i:=1 to n do
    if not used[i] then begin
    s:=s+chr(i+ord(''0''));used[i]:=true;
    solve(dep+1);
    s:=copy(s,1,length(s)-1); used[i]:=false;
    end;
    end;

  • 第6题:

    在上行DPCCH的开环功率控制中,UE根据收到的IE“DPCCH_Power_offset”和测量得的CPICH_RSCP的值计算出上行DPCCH的初始功率,其计算公式为()

    A.DPCCH_Initial_power=DPCCH_Power_offset+CPICH_RSCP

    B.DPCCH_Initial_power=DPCCH_Power_offset-CPICH_RSCP

    C.DPCCH_Initial_power=DPCCH_Power_offset+CPICH_RSCP+ConstantValue

    D.DPCCH_Initial_power=DPCCH_Power_offset+CPICH_RSCP-ConstantValue


    参考答案:B