以下能够正确计算n!的程序是()。A.Pfivate Sub Commgld1_LClick() n=5:x=1 Do x=x*1 i=i+1 Loop W

题目

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

A.Pfivate Sub Commgld1_LClick() n=5:x=1 Do x=x*1 i=i+1 Loop Whilei<n

B.Private Sub Command1_Click() n=5:x=1:i=1 Do x=x*1 i=i+1 Loop Whilei<n Print x End Sub

C.Pfivate Sub Command1_ C1ick() n=5:x=1:i=1 Do X=X*1 i=i+1 Loop While i<=n

D.Private Sub Command1_C1ick() n=5:x=1:i=1 Do X=X*1 i=i+1 Loop While i>n Print x End Sub

如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

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

A.Private Sub Commandl_C1ick()

B.hiVate Sub Commandl_C1ick() n=5:x=1 n=5:x=1:i=1 DO DO X=x*1 X=X*1 i=i+1 i=i+1 Loop while i<n Loop While<n Print x Ptinte x End Sub End Sub

C.Private Sub Commandl_Click ()

D.Pdvate Sub Commandl C1ick() n=5:X=1:i=1 n=5=:x=1:i=1 DO DO X=X*1 X=X*1 i=i+1 i=i+1 Loop While i>n Print x Print x End Sub End Sub


正确答案:C
解析:本题考查DoWhile语句的用法。首先我们知道n!=1×2×3×……×(n-1)×n,由于是累乘,因此x和i的初值都必须为l;其次就是循环执行条件的确定,由于使用的是While型循环,表示在满足条件时执行循环体中的代码,这里满足执行循环的条件应该是i=n。选项A和B的循环条件都是in,少了i=n的一次循环,实际上只执行了n-1次;而选项D则从i>n时才开始执行,不合题意;同时,选项B没有指定i的初值,系统会默认i;0,这也不合题意。本题正确答案为选项C。

第2题:

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

A.Private Sub Commeadl_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 Whilei<=n Print x End Sub

D.Private Sub Commsndl_Click() n=5: x=1: i=1 Do x=x*i i=i+1 Loop While i>n Print x End Sub


正确答案:C
解析:选项A中变量i没有赋初值操作,其一直保持0值,所以始终为0;选项B中循环条件“i>n”错误,计算一次后就退出循环,导致计算结果不正确;选项D的计算过程中,第1次计算时“1>4”的条件不处理,退出Do循环,其结果为1;选项C的计算结果为5!。

第3题:

以下能够正确计算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
解析:n!=1×2×3×…×(n-1)×n,由于是累乘,因此x和i的初值都必须为1;其次就是循环执行条件的确定,由于使用的是While型循环,表示在满足条件时执行循环体中的代码,这里满足执行循环的条件应该是i=n。注意: Do…Loop While循环控制结构是先执行循环体语句,然后再判断条件。—因此,不管条件如何,该循环语句至少执行一次循环体。注意:Do…Loop Until、Do…Loop While循环控制结构。

第4题:

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

A.Privas 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
解析:本题主要考查Do循环控制结构。只有C项符合题意。A中i一开始未被赋值,默认为0;B项中由于“in”的条件使得 Do循环比应有循环次数少循环一次;选项D由于“i>n”这一条件,使得控制语句只能循环一次。

第5题:

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

A.Private Sub Command1_Click( ) n=5:x=l 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_Cliek( ) 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_Cliek( ) n=5:x:1:i=1 Do x=x*i i=j+1 Loop While i > n Print x End Sub


正确答案:C
解析:本题考查DoLoop语句的用法。首先是执行循环体,再确定循环执行的条件,这里满足执行循环的条件应该是i=n,选项A和B的循环条件都是in,少了i=n的一次循环,实际上只执行了n-1次;而选项D则从i>n时才开始执行,不合题意。

第6题:

以下能够正确计算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
解析:n!=1×2×3×…×(n-1)×n,由于是累乘,因此x和i的初值都必须为1;其次就是循环执行条件的确定,由于使用的是While型循环,表示在满足条件时执行循环体中的代码,这里满足执行循环的条件应该是i=n。

第7题:

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

A.Private Sub Command1_Chck( ) 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=l 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=l 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=l Dox=x*i i=i+1 Loop While i>n Print x End Sub


正确答案:C
解析:A中i一开始末被赋值,默认为0;B项中由于“in”的条件使得Do循环比应有循环次数少循环一次;选项D由于“i>n”这一条件,使得控制语句只能循环一次。

第8题:

假如整数数列中的数不重复,并存放在数组中。下列给定的程序中,函数fun()的功能是:删除数列中值为X的元素。 N中存放的是数列中元素的个数。

请改正程序中的错误,使它能够得出正确的结果。

注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。

试题程序:

include<stdio.h>

define N 20

fun (int *a,int n,int x)

{int p=0,i;

a[n]=x;

while (x!=a[p])

p=p+1;

if(p==n) return -1;

else

{for (i=p;i<n;i++)

/*************found**************/

a[i+1]=a[i];

return n-1;

}

}

main()

{int w[N]={-3,0,1,5,7,99,10,15,30,90},

x,n,i;

n=10;

printf("The original data :\n");

for (i=0;i<n;i++) printf("%5d",w[i]);

printf("\nInput x (to delete ): ");

scanf("%d",&x);

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

n=fun(w,n,x);

if (n==-1) printf("***No be found!

***\n\n");

else

{printf("The data after deleted:\n");

for (i=0;i<n;i++) printf("%5d",

w[i]);printf("\n\n");

}

}


正确答案:错误:a[i+1]=a[i]; 正确:a[i]=a[i+1];
错误:a[i+1]=a[i]; 正确:a[i]=a[i+1]; 解析:上机改错题有一个优势,就是我们可以执行该程序,根据错误的提示再一步一步实现改错的目的,我们先不看程序是什么意思,甚至不用看它在求什么。按Ctrl+F9快捷键,然后看看屏幕提示。另外,审题时我们必须要注意“不要改动main()函数,不得增行或减行,也不得更改程序结构”,这样;对我们来说,只要读懂题意,对程序执行部分:
{int p=0,i;
a[n]=x;
while (x!=a[p])
p=p+1;
if (p==n) return -1;
else
{ for (i=p;in;i++)
a[i+1]=a[i];
return n-1;
}
逐步分析,再应用平时的常识加以区分,琢磨,相信答案不攻自破,这种考题,按Ctrl+F9快捷键后,屏幕一般都不会提示错误,否则就显得太儿科了一点,所以,我们并不需要着急去找错误,而是把程序读懂。

第9题:

以下能够正确计算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