改错题key VFP.docx

上传人:b****6 文档编号:12619223 上传时间:2023-06-06 格式:DOCX 页数:17 大小:17.56KB
下载 相关 举报
改错题key VFP.docx_第1页
第1页 / 共17页
改错题key VFP.docx_第2页
第2页 / 共17页
改错题key VFP.docx_第3页
第3页 / 共17页
改错题key VFP.docx_第4页
第4页 / 共17页
改错题key VFP.docx_第5页
第5页 / 共17页
改错题key VFP.docx_第6页
第6页 / 共17页
改错题key VFP.docx_第7页
第7页 / 共17页
改错题key VFP.docx_第8页
第8页 / 共17页
改错题key VFP.docx_第9页
第9页 / 共17页
改错题key VFP.docx_第10页
第10页 / 共17页
改错题key VFP.docx_第11页
第11页 / 共17页
改错题key VFP.docx_第12页
第12页 / 共17页
改错题key VFP.docx_第13页
第13页 / 共17页
改错题key VFP.docx_第14页
第14页 / 共17页
改错题key VFP.docx_第15页
第15页 / 共17页
改错题key VFP.docx_第16页
第16页 / 共17页
改错题key VFP.docx_第17页
第17页 / 共17页
亲,该文档总共17页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

改错题key VFP.docx

《改错题key VFP.docx》由会员分享,可在线阅读,更多相关《改错题key VFP.docx(17页珍藏版)》请在冰点文库上搜索。

改错题key VFP.docx

改错题keyVFP

试卷编号:

586

所属语言:

VisualFoxpro

试卷方案:

所有改错

一、程序改错共10题(共计100分)

第1题(10.0分)题号:

11

*-----------------------------------------------

*【程序改错】

*-----------------------------------------------

*题目:

下列程序用来产生20个0~100之间的随机整数,

*并找出其中的最大数和最小数,输出时20个随机

*整数*均在一行显示,下一行显示最大数和最小数。

*要求:

*

(1)将下列程序输入到项目中的程序文件pcode中,并

*对其中的2条错误语句进行修改。

*

(2)在修改程序时不允许修改程序的总体框架和算法,

*不允许增加或减少语句的数目。

*------------------------------------------------

DIMENSIONA(20)

FORI=1TO20

A(I)=INT(RAND()*100)

ENDFOR

Mmax=A

(1)

Mmin=A

(1)

?

A

(1)

FORi=2to20

***********FOUND**********

?

STR(A(I),3)

IFMmax

Mmax=A(i)

ENDIF

IFMmin>A(i)

Mmin=A(i)

ENDIF

ENDFOR

***********FOUND**********

?

"最大数是:

"+str(Mmax)+"最小数是:

",Mmin

 

答案:

=======(答案1)=======

?

?

str(a(i),3)

=======(答案2)=======

?

"最大数是:

"+str(Mmax)+"最小数是:

",Mmin

=========或=========

?

"最大数是:

",Mmax,"最小数是:

",Mmin

 

第2题(10.0分)题号:

19

*-------------------------------------------------------

*【程序改错】

*-------------------------------------------------------

*题目:

下列的程序的功能是:

删除字符串(不包括汉字)中的空格

*并将它按字符从大到小的顺序排列后输出。

例如:

字符串

*"BCefA",输出结果为“feCBA”。

要求:

*

(1)将下列程序输入到项目的程序文件pcode中,并对其中的

*2条错误语句进行修改;

*

(2)在修改程序时,不允许修改程序的总体框架和算法,不允许

*增加或减少语句数目。

*-------------------------------------------------------

clear

x='BCefA'

y=''

x=strtran(x,space

(1),space(0))

n=len(x)

dimensiona(n)

fori=1ton

a(i)=left(x,1)

***********FOUND**********

x=substr(x,i)

endfor

=asort(A)

***********FOUND**********

forj=1ton

y=y+a(j)

endfor

?

y

答案:

=======(答案1)=======

x=substr(x,2)

 

=======(答案2)=======

forj=nto1step-1

 

第3题(10.0分)题号:

17

*-------------------------------------------------------

*【程序改错】

*-------------------------------------------------------

*题目:

下列的程序功能是:

统计一个字符串中包含的汉字、英文

*字母及其他字符个数。

*要求:

*

(1)将下列程序输入到项目的程序文件pcode中,并对其中的

*2条错误语句进行修改;

*

(2)在修改程序时,不允许修改程序的总体框架和算法,不允许

*增加或减少语句数目。

*-------------------------------------------------------

c="数据库"

store0tohz,yw,qt&&变量分别用于汉字、英文字母和其他字符计数

***********FOUND**********

dowhilec>0

x=asc(left(c,1))

ifx>127

hz=hz+1

c=subs(c,3)

else

ifx>64andx<91orx>96andx<123

yw=yw+1

else

qt=qt+1

endif

***********FOUND**********

c=subs(c,3)

endif

enddo

waitwind"汉字:

"+str(hz,4)+"英文字母:

"+str(yw,4)+"其他字符"+str(qt,4)

答案:

=======(答案1)=======

dowhilelen(c)>0

=========或=========

''<>c

=========或=========

""<>c

=========或=========

space(0)<>c

=======(答案2)=======

c=subs(c,2)

 

第4题(10.0分)题号:

20

*-------------------------------------------------------

*【程序改错】

*-------------------------------------------------------

*题目:

完数是指数n的各因子(1视为因子,n不视为因子)之和正好

*等于该数本身。

例如:

6为完数(因子为1、2、3,且1+2+3=6)。

*下列程序的功能是:

找出1000以内的所有完数,并将找出的

*完数及该数的所有因子输出。

输出结果形式为:

*6,1,2,3

*28,1,2,4,7,14

*要求:

*

(1)将下列程序输入到项目的程序文件pcode中,并对其中的

*2条错误语句进行修改;

*

(2)在修改程序时,不允许修改程序的总体框架和算法,不允许

*增加或减少语句数目。

*-------------------------------------------------------

clear

fori=1to1000

m=0

s=''

forj=1toi-1

ifi/j=int(i/j)

m=m+j

***********FOUND**********

s=s+','+j

endif

endfor

ifi=m

?

i

***********FOUND**********

?

s

endif

endfor

答案:

=======(答案1)=======

s=s+','+str(j)

=========或=========

s=s+','+allt(str(j))

=======(答案2)=======

?

?

s

 

第5题(10.0分)题号:

14

*-------------------------------------------------------

*【程序改错】

*-------------------------------------------------------

*题目:

下列的程序功能是:

求出不超过6位数的Armstrong数。

所谓

*Armstrong数是指一个n位数的正整数,它的每位数字的n次方

*之和等于该数本身。

例如:

153=1^3+5^3+3^3要求:

*

(1)将下列程序输入到项目的程序文件pcode中,并对其中的

*2条错误语句进行修改;

*

(2)在修改程序时,不允许修改程序的总体框架和算法,不允许

*增加或减少语句数目。

*-------------------------------------------------------

clear

form=1to100000

n=len(allt(str(m)))

x=0

fory=1ton

c=substr(allt(str(m)),y,1)

***********FOUND***************************************

x=x+val(c)*n

endfor

***********FOUND***************************************

ifn=x

?

'Armstrong数',m

endif

endfor

答案:

=======(答案1)=======

x=x+val(c)^n

=========或=========

x=x+val(c)**n

=======(答案2)=======

ifm=x

=========或=========

ifx=m

 

第6题(10.0分)题号:

18

*-------------------------------------------------------

*【程序改错】

*-------------------------------------------------------

*题目:

下列的程序用来产生30个0~100之间的随机整数,并且找出

*其中的最大偶数和最小奇数

*要求:

*

(1)将下列程序输入到项目的程序文件pcode中,并对其中的

*2条错误语句进行修改;

*

(2)在修改程序时,不允许修改程序的总体框架和算法,不允许

*增加或减少语句数目。

*-------------------------------------------------------

clear

dimensiona(30)

fori=1to30

***********FOUND**********

a(i)=int(rand()*200)

endfor

Mmax=-1

Mmin=100

fori=1to30

?

?

str(a(i),3)

ifMmax

Mmax=a(i)

***********FOUND**********

else

ifMmin>a(i)andmod(a(i),2)=1

Mmin=a(i)

endif

endfor

?

"最大偶数:

",iif(Mmax=-1,"无",Mmax)

?

"最小奇数:

",iif(Mmin=100,"无",Mmin)

答案:

=======(答案1)=======

a(i)=int(rand()*100)

=======(答案2)=======

endif

 

第7题(10.0分)题号:

16

*-------------------------------------------------------

*【程序改错】

*-------------------------------------------------------

*题目:

下列的程序功能是:

在屏幕上显示如图所示的菱形。

*A

*BBB

*CCCCC

*DDDDDDD

*EEEEEEEEE

*FFFFFFFFFFF

*FFFFFFFFFFF

*EEEEEEEEE

*DDDDDDD

*CCCCC

*BBB

*A

*

*要求:

*

(1)将下列程序输入到项目的程序文件pcode中,并对其中的

*2条错误语句进行修改;

*

(2)在修改程序时,不允许修改程序的总体框架和算法,不允许

*增加或减少语句数目。

*-------------------------------------------------------

settalkoff

c="ABCDEF"

clear

fori=1tolen(c)

?

space(10-i)

forj=1to2*i-1

***********FOUND**********

?

?

subs(c,i)

endfor

endfor

***********FOUND**********

fori=len(c)to1

?

space(10-i)

forj=1to2*i-1

?

?

subs(c,i,1)

endfor

endfor

 

答案:

=======(答案1)=======

?

?

subs(c,i,1)

=======(答案2)=======

fori=len(c)to1step-1

 

第8题(10.0分)题号:

51

*-------------------------------------------------------

*【程序改错】

*-------------------------------------------------------

*下列程序的功能是:

第一个循环随机生成30个大写英文字母,并且存放到数组C中,

*第二个循环实现数组C中30个元素内容的排序(从小到大)。

*要求:

*①将下列程序输入到项目中的程序文件pcode中,并对其中的2条错误语句进行修改;

*②在修改程序时,不允许修改程序的总体框架和算法,不允许增加或减少语句数目。

*-------------------------------------------------------

CLEAR

DIMENSIONc(30)

FORi=1TO30&&第一个循环

n=CHR(64+MAX(1,MOD(INT(RAND()*100),27)))

c(i)=n

ENDFOR

FORi=1TO30&&第二个循环

m=c(i)

FORt=i+1TO30

***********FOUND**********

IFm

c(i)=c(t)

c(t)=m

m=c(i)

ENDIF

***********FOUND**********

ENDDO

ENDFOR

DISPLAYMEMOLIKEc*

 

答案:

=======(答案1)=======

ifm>c(t)

=========或=========

ifc(t)

=======(答案2)=======

endfor

=========或=========

endf

=========或=========

next

 

第9题(10.0分)题号:

13

*----------------------------------------------------------------------------

*[程序改错]

*题目:

下列程序的功能是将小写金额(假设小于10万且无小数位)转换为

*中文大写形式。

例如:

213转换为“贰佰壹拾叁元”,3012转换为“叁仟零佰拾贰元”。

*要求:

*

(1)将下列程序输入到项目中的程序文件prode中,并对其中的2条错误语句进行修改。

*

(2)在修改程序时,不允许修改程序的总体框架和算法,不允许增删语句。

*----------------------------------------------------------------------------

nmoney=10249

cmoney=allt(str(nmoney))

cstring1='零壹贰叁肆伍陆柒捌玖'

cstring2='万仟佰拾元'

***********FOUND**********

cresult=0

forn=1tolen(cmoney)

***********FOUND**********

c=substr(cmoney,n)

cresult=cresult+subs(cstring1,val(c)*2+1,2)+subs(cstring2,n*2-1,2)

endfor

waitwindows'大写金额为:

'+cresult

答案:

=======(答案1)=======

cresult=space(0)

=========或=========

cresult=''

=========或=========

cresult=""

=========或=========

cresult=[]

=======(答案2)=======

c=substr(cmoney,n,1)

 

第10题(10.0分)题号:

12

*-------------------------------------------------------

*【程序改错】

*-------------------------------------------------------

*题目:

下列的程序功能是:

第一个循环随机生成10个大写英文字

*母,并且存放到数组C中,第二个循环将数组C中10个元素

*排序(从小到大)。

要求:

*

(1)将下列程序输入到项目的程序文件pcode中,并对其中的

*2条错误语句进行修改;

*

(2)在修改程序时,不允许修改程序的总体框架和算法,不允许

*增加或减少语句数目。

*-------------------------------------------------------

clear

n=10

dimensionc(n)

fori=1ton

c(i)=chr(65+int(rand()*26))

endfor

DISPLAYMEMOLIKEc*

forj=2ton

m=c(j)

fort=1toj-1

ifm

fork=jtot+1step-1

***********FOUND**********

c(k)=c(k+1)

endfor

c(t)=m

exit

endif

endfor

***********FOUND**********

enddo

DISPLAYMEMOLIKEc*

答案:

=======(答案1)=======

c(k)=c(k-1)

 

=======(答案2)=======

endfor

=========或=========

next

=========或=========

endf

 

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 法律文书 > 调解书

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2