以下能正确计算1×2×3×…×10的程序段是()。

题目

以下能正确计算1×2×3×…×10的程序段是()。

  • A、do{i=1;s=1;
  • B、do{i=1;s=0;s=s*i;s=s*i;i++;i++;}while(i<=10);}while(i<=10);
  • C、i=1;s=1;
  • D、i=1;s=0;do{s=s*i;do{s=s*i;i++;i++;}while(i<=10);}while(i<=10);
如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

有以下程序段: int a[10]={1,2,3,4,5,6,7,8,9,10},*p=&a[3],b; b=p[5]; b中的值是( )。

A.5

B.6

C.8

D.9


正确答案:D
解析:C语言中规定:一个数组名代表它的起始地址。本题中,定义了一个长度为10的数组a并赋初值,数组名a就是数组的起始地址,由于数组下标是从0开始,因此a[0]的地址也是a的值,a[1]的地址可以用a+1表示,也就是说a+1指向数组a中下标为1的元素,同样a+i是a[i]的地址,*p=&a[3]表明指针变量p指向元素a[3],即p指向数组a的第4个元素4,p[5]的值应为数组a中的第9个元素的值即a[8]的值,即p[5]=9,所以b=9。故4个选项中选项D符合题意。

第2题:

在VB程序中有以下程序段,语句Print "VB"的执行次数是( )

For i=1 To 3 Step 2

Print "VB"

Next i

A.1

B.2

C.3

D.4


正确答案:B

第3题:

设变量已正确定义,则以下能正确计算f=n!的程序段是( )。A)f=0; B)f=1; for(i=1;i<=n;i++) f*=i; for(i=1;i<n;i++) f*=i;C)f=1; D)f=1; for(i=n;i>1;i++) f*=i; for(i=n;i>=2;i--) f*=i;


正确答案:D
A项不成立,因为f=0,乘以任何数都为0,B项的判断条件错误,i<n,计算的结果为(n-1)!,C项也不对,计算的是一个无限循环,n*(n+1)*(n+2)…….

第4题:

有以下程序段: int k=0,a=1,b=2,c=3; k=ac?c:k; 执行该程序段后,k的值是

有以下程序段: int k=0,a=1,b=2,c=3; k=a<b?b:a; k=k>c?c:k; 执行该程序段后,k的值是 ______。

A.3

B.2

C.1

D.0


正确答案:B
解析:三目运算符的一般形式为(表达式1)?(表达式2):(表达式3),当(表达式1)值为真时,(表达式2)的值为整个表达式的值;当(表达式1)值为假时,(表达式3)的值为整个表达式的值。题中执行表达式“k=ab?b:a”后,k=2,将此值代入后一个表达式“k=k>c?c:k,由于“k>c”值为假,故k的值还等于原来k的值,即2。

第5题:

设变量已正确定义,则以下能正确计算n!的程序段是______。

A.f=0; for(i=1; i<=n; i++)f*=i;

B.f=1; for(i=1; i<n; i++)f*=i;

C.f=1; for(i=n; i>1; i++)f*=i;

D.f=1; for(i=n; i>=2; i--)f*=i;


正确答案:D
解析:A选项,将f赋值为0,结果得到0,因为0乘任何数都为0;B选项,in,计算的是(n-1)!,C选项将陷入死循环。

第6题:

以下程序段a=sqr(3)b=sqr(2)c=a>bprint c的输出结果是( )A.-1B.0C.falseD.true

以下程序段

a=sqr(3)

b=sqr(2)

c=a>b

print c

的输出结果是( )

A.-1

B.0

C.false

D.true


正确答案:D

第7题:

有以下程序段: int a[10]={1,2,3,4,5,6,7,8,9,10},*p=&a[3],b; b=p[5];则b中的值是( )。

A.5

B.6

C.8

D.9


正确答案:D
解析:p为指向整型数据的指针变量,存放的是a[3]的地址,即p指向数组{4,5,6,7,8,9,10},b=p[5],因此,b中的值是9。

第8题:

设变量已正确定义,则以下能正确计算f=n!的程序是( )。

A.f=0:for(i=1;i1;i++)f*=i:

D.f=1;for(i=n;i>=2;i--)f*=i:


正确答案:D

由i"1 1的数字定义可知n!=n*(n-1) *(n-2)*…*1。在选项A中,由于f的初值为0,在for 循环语句中,f依次乘以1,2,3,…,n,最后计算得到f=n! 一0,所以选项A不正确。在选项B中,f的初值为1,在for 循环语句中,f依次乘以1,2,3,…,(n-1),最后计算得到f =(n-1)!,所以选项B不正确。在选项C中,f的初值为1,在for循环语句中,f依次乘以n,n+1,n+2,……,所以选项c不正确。在选项D中,f的初值为l,在for循环语句中,f依次乘以n,n-1,n-2,…,2,最后计算得到f=n!,所以选项D正确。

第9题:

有以下程序段:int k=0, a=1, b=2, c=3;k=ac? c:k;执行该程序后,k的值是______。A.3B

有以下程序段: int k=0, a=1, b=2, c=3; k=a<b? b:a; k=k>c? c:k; 执行该程序后,k的值是______。

A.3

B.2

C.1

D.0


正确答案:B
解析:第一个表达式得到k=2,对于第二个表达式,因为k=23,k仍然赋值为k。因此最后k值为2。

第10题:

设变量已正确定义,则以下能正确计算f=n!的程序段是 ______。

A.F=0:

B.f=1; for(i=1;i<=n;i++) f*=i; for(i=1;i<n;i++) f*=i;

C.f=1;

D.f=-1; for(i=n;i>1;i++)f*=i; for(i=n;i>=2;i--)f*=i;


正确答案:D
解析:n!=n*(n-1)*……*2*1,由于选项A中f的初值为0,所以循环n次后,f值依然为0,故选项A错误:选项B中循环的终止条件是“in”,即只执行i-1次循环,得到的f值为(n-1)*……*2*1的值,故选项B错误;选项C中,当n>1时,由于初值“i=n”是符合条件“i>1”的,且增量为+1,故循环中永远不会出现不满足条件“i>1”的值,所以出现死循环。

更多相关问题