用程序计算一个整数的各位数字之和,在下划线处应填写的语句是()。SET TALK OFFINPUT "X=" TO XS=0

题目

用程序计算一个整数的各位数字之和,在下划线处应填写的语句是( )。 SET TALK OFF INPUT "X=" TO X S=0 DO WHILE X!=0 S=S+MOD(X,10) ______ ENDDO ?S SET TALK ON

A.X=int(X/10)

B.X=int(X%10)

C.X=X-int(X/10)

D.X=X-int(X%10)

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

第1题:

执行下列程序:

SET TALK OFF

STORE 0 TO X,Y

DO WHILE X<6

X=X+Y

Y=Y+2

ENDDO

? X,Y

SET TALK ON

RETURN

在屏幕上显示的输出结果是( )。

A.88

B.68

C.46

D.66


正确答案:D
解析:DO WHILE-ENDDO语句的格式为:
DO WHILE条件>
命令序列>
ENDDO
执行该语句时,先判断DO WHILE处的循环条件是否成立,如果条件为真,则执行DO WHILE与ENDDO之间的命令序列>(循环体)。当执行到ENDDO时,返回到DO WHILE,再次判断循环条件是否为真,以确定是否再次执行循环体。若条件为假,则结束该循环语句,执行ENDDO后面的语句。
先将0赋给两个变量X和Y,使用一个DO WHILE循环语句来操作,判断条件是变量X是否小于6,如果大于或等于6,则退出循环,否则执行循环体,执行X=X+Y,X=0,再执行Y=Y+2后,Y=2,重复此循环体的操作。题干中的循环步骤及结果见下表。

X、Y最终的显示值都是6。

第2题:

【程序】

SET TALK OFF

INPUT“请输入A:” TO A

INPUT“请输入B:” TO B

IF A<B

T=A

A=B

B=T

ENDIF

DO WHILE B<>0

T=MOD(A,B)

A=B

B=T

ENDDO

? A

SET TALK ON

RETURN

若程序运行时输入A值为12,B值为8,则A的输出结果为 ______。

A.2

B.4

C.12

D.8


正确答案:B
解析:本程序的功能是求两个数的最大公约数。方法是用两个数中较小的去除较大的,然后将除数作为下一次除的被除数,余数作为下一次除的除数,反复进行这样的操作,直到余数为零时为止,则最后一次除的除数即为所给两个数的最大公约数。

第3题:

填上适当的语句,使求100以内能被3整除但不能被7整除的数字之和的程序完整正确。

SET TALK OFF

CLEAR

STORE O TO S,N

DO WHILE N<=i00

【 】

S=S+N

ENDIF

【 】

ENDDO

?“S=”+STR(S)

SET TALK 0N


正确答案:IF N/3:INT(N/3).AND N/7<>INT(K/7){MODOD(N7)#O)N=N+1{N=N+3}
IF N/3:INT(N/3).AND N/7<>INT(K/7){MOD,OD(N,7)#O),N=N+1{N=N+3}

第4题:

执行如下程序,最后s的显示值为 SET TALK OFF S=0 i=5 x=11 DO WHILE s<=x s=s+i i=i+l ENDD0 7 S SET TALK ON

A. 5

B. 11

C. 18

D. 26


正确答案:C
该循环语句中,变量s和i每次执行循环后值的变化如下
s值 i值
第一次循环5 6
第二次循环11 7
第三次循环18 8
程序在执行第四次循环时,因条件(18<=11)为假而退出循环。

第5题:

用程序计算一个整数的各位数字之和,在下划线处应填写的语句是( )。

SET TALK OFF

INPUT "X=" TO X

S=0

DO WHILE X! =0

S=S+MOD(X, 10)

ENDDO

?s

SET TALK ON

A.X=int(X/10)

B.X=int(X%10)

C.X=X-int(X/10)

D.X=X-int(X%10)


正确答案:A
解析:首先用户输入一个数字保存到变量X中,使用一个DO WHILE循环语句来累加各位数字之和,判断条件是变量X是否等于0,如果为0,则退出循环,否则通过求余函数MOD得到变量X的个位数。因为题意要求计算各位数字之和,所以接下来应当将变量X除以 10并取整,使之缩小10倍,以便将变量X的十位数变成个位数,然后再次循环计算。

第6题:

:任取一个四位数乘3456,用A表示其积的各位数字之和,用B表示A的各位数字之和,C表示8的各位数字之和,则C为( )。

A.3

B.9

C.10

D.18


正确答案:B

若一个数能被9整除,则其数字和一定能被9整除,由此可知,ABC均能被9整除,可以通过求出C的范围找出满足条件的C。由于任意的一个四位数乘以3456,积一定小于3456×10000=34560000。因此,积不会超过八位数,且每位上的数字不会超过9,所以A<8×9=72,从而可得B<7+9=16。因为3456能被9整除,一个四位数乘以3456一定能被9整除,能被9整除的数,其数字和也能被9整除,所以ABC均能被9整除,可得C=B=9。因此,本题正确答案为B

第7题:

执行下列程序,最后S的显示值为( )。

SET TALK OFF

s=0

i=2

x=10

DO WHILE s<=x

s=s+i

i=i+1

ENDDO

?s

SET TALK ON

A.12

B.14

C.16

D.18


正确答案:B
解析:DO WHILE-ENDDO语句的格式为:
DO WHILE条件>
命令序列>
ENDDO
执行该语句时,先判断DO WHILE处的循环条件是否成立,如果条件为真,则执行DO WHILE与ENDDO之间的命令序列>(循环体)。当执行到ENDDO时,返回到DO WHILE,再次判断循环条件是否为真,以确定是否再次执行循环体。若条件为假,则结束该循环语句,执行ENDDO后面的语句。
先给3个变量赋初始值,使用一个DO WHILE循环语句来操作,判断条件是变量s是否小于等于x,如果大于x,则退出循环,否则执行循环体,执行s=s+i,s=2;再执行i=i+1后,i=3,重复此循环体的操作。题干中的循环步骤及结果见下表。

所以S最终的显示值是14。

第8题:

【程序说明】 求1~10之间的所有整数之和。

【程序】

SET TALK OFF

STORE 0 TO N,S

DO WHILE (1)

N=N+1

S=S+N

IF (2)

(3)

ENDIF

ENDDO

? “ S=”+STR (S,2)

SET TALK ON

RETURN

(1)

A..F.

B..T.

C.N<=10

D.N>=10


正确答案:B

第9题:

执行如下程序,最后S的显示值为 SET TALK OFF S=0 i=5 X=11 DO WHILE S<=x S=S +i I = I +l ENDDO ?s SET TALK ON

A.5

B.11

C.18

D.26


正确答案:C
解析:该循环语句中,变量s和i每次执行循环后值的变化如下:
  s值  i值
  第一次循环  5  6
  第二次循环  11  7
  第三次循环  18  8
  程序在第四次执行循环时,因条件(18<;11)为假而退出循环。

第10题:

【程序说明】程序功能是计算一个整数的各位数字之和。

【程序】

SET TALK OFF

INPUT“x=”TO x

s=0

DO WHILE x!=0

s=s+ MOD(x,10)

(1)

(2)

? S

SET TALK ON

(1)

A.x=INT(x*10)

B.x=INT(x/10)

C.x=x-INT(x/10)

D.x=x-INT(x*10)


正确答案:B
解析:此程序运行步骤如下:首先等待用户屏幕输入一个数字,由变量x保存该数字;将0赋值给变量s,此变量用于计算各位数字和;使用一个DO WHILE循环语句,首先判断x是否等于0,如果等于0,退出循环,如果不等于零,则使用MOD()(取余)函数求出x除以10的余数(数字的个位数),并累加到变量s中。接下来,程序应当将变量x除以10并取整,使之缩小10倍,以便将x的10位数字变为个位数字,所以在此应当选择选项B。

更多相关问题