您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 综合/其它 > VF30道程序设计题参考答案
1求圆的面积cleainpu'请输入半径='torifr=0s=pi[]*r^2?'s=',selse?'此时半径无意义'endifretu2求分段函数的值cleainpu'请输入x='toxdocasecasex0y=2*x+5casex=0y=-xcasex0y=xendcase?'y=',ysettalkonretu3输入一个成绩判断等级cleainput'请输入成绩='toxifx=100andx=0docasecasex60?'不及格'casex70?'及格'casex80?'中'casex90?'良'otherwise?'优秀'endcaseendififx100orx0?'成绩无效'endifretu4输入多个成绩判断等级cleadimea[6]fori=1to6inpu'请输入成绩:'toa[i]?':',str[a[i],3]ifa[i]=100anda[i]=0docasecasea[i]60?'不及格'casea[i]70?'及格'casea[i]80?'中'casea[i]90?'良'otherwise?'优秀'endcaseendififa[i]100ora[i]0?'成绩无效'endifendforretu5求和1到100的和cleas=0fori=1to100s=s+iendfor?'s=',sretu61to100乘cleas=1fori=2to100s=s*iendfor?'s=',sretu71+3+……+99cleas=0fori=1to99step2s=s+iendfor?'s=',sretu81-2+3-……-100cleas=0fori=1to100s=s-(-1)^i*iendfor?'s=',sretu91+1/2+2/3+3/5+……前十项和cleas=1a=1b=1fori=1to9t=aa=bb=t+bs=s+a/bendfor?'s=',sretu10.1+2!+3!+cleas=0t=1fori=1to10t=t*is=s+tendif?'s=',sretu11.对学生表中所有入学成绩≥650分的学生免去贷款cleaopendatabase教学管理use学生if入学成绩=650?姓名,'免去贷款'endifretu12.输出图形************************************************************************第一个cleafort=1to4fori=1tot??'*'endfor?endforretu下面是第五个图形cleafort=4to1step-1?space[4-t]fori=1tot??'*'endforendforretu下面是第三个图形cleafort=1to4?space[4-t]fori=1to2*t-1??'*'endfendfretu13.判断一个整数是否素数cleainput'请输入x='toxfori=2tox-1ifmod[x,i]=0?x,'不是素数'exitendifendforIfix-1?x,'是素数'endifretu14.判断十个整数是否素数cleadimea(10)forj=1to10input'请输入x='toa(j)?fori=2toa[j]-1ifa[j]/i=int(a[j]/i)exitendifendforifia[j]-1?a[j],'是素数'else?a[j],'不是素数'endifendforretu15.找出两个数的大数和小数cleadimea[2]fori=1to2input'请输入x='toa[i]Endforifa[1]=a[2]?a[1]else?a[2],'较大'endifretu16.找出三个数的最大数和最小数cleainput'请输入一个数:'toxstorextomax,minfori=2to3input'请输入一个数:'toxifmax=xmax=xelsemin=xendifendfor?'最大数:',max?'最小数:',minretu17.找出十个数的最大数和最小数cleadimea[10]fori=1to10input'请输入x='toa[i]endforforj=9to1step-1fori=1tojifa[i]=a[i+1]t=a[i]a[i]=a[i+1]a[i+1]=tendifendforendfor?'最大值',a[1]?'最小值',a[10]retu18.找出2×3矩阵中的最大数和最小数cleadimea[2,3]fori=1to2forj=1to3input'请输入x='toa[i,j]endforendforfori=1to1forj=1to2ifa[i,j]=a[i,j+1]t=a[i,j]a[i,j]=a[i,j+1]a[i,j+1]=tendifendforendforforj=1to3step2fori=1to1ifa[i,j]=a[i+1,j]t=a[i,j]a[i,j]=a[i+1,j]a[i+1,j]=tendifendforendfor?'最小值=',a[1,1]?'最大值=',a[2,3]retu19.对三个整数从大到小排序cleadimea[3]fori=1to3input'请输入x='toa[i]endforforj=2to1step-1fori=1tojifa[i]=a[i+1]t=a[i]a[i]=a[i+1]a[i+1]=tendifendforendforfori=1to3space[2]?a[i]endfretu20.对十个整数从大到小排序(用选择法和起泡法两种方法cleadimea[10]fori=1to10input'请输入x='toa[i]endforforj=9to1step-1fori=1tojifa[i]=a[i+1]t=a[i]a[i]=a[i+1]a[i+1]=tendifendforendforfori=1to10space[2]?a[i]endforretu21.输出Fibonacci(斐波那契)数列的前十项cleadimea[10]fori=1to10ifi3a[i]=1elsea[i]=a[i-2]+a[i-1]endif?a[i]endfor?retu22.输出杨辉三角的前十行cleadimeaa(10,10)fori=1to10?space(20-2*i)forj=1toiifj1.and.jiaa[i,j]=aa(i-1,j-1)+aa(i-1,j)elseaa(i,j)=1endif??space[1]+str(aa[i,j],4)endfor?endforretu23.对2×3矩阵转置cleadimea[2,3]fori=1to2forj=1to3input'请输入数值='toa[i,j]endforendfordimeb[3,2]forj=1to3fori=1to2b[j,i]=a[i,j]??b[j,i]endfor?endforretu24.求三位数中的所有水仙花数(即指一个三位数,其各位数字立方和等于该数本身)cleafora=1to9forb=0to9forc=0to9ifa^3+b^3+c^3=100*a+10*b+c?100*a+10*b+cendifendforendforendforretu25.求100以内的所有完数(即一个数恰好等于除它本身外的所有因子之和)cleafora=1to100s=0fori=1toa-1ifa/i=int[a/i]s=s+iendifendforifa=s?sendifendforretu26.已知三角形的三边(从键盘输入),求其面积(S^2=p(p-a)(p-b)(p-c),p=(a+b+c)/2)cleainput'请输入边长='toainput'请输入边长='tobinput'请输入边长='tocp=(a+b+c)/2m=p*(p-a)*(p-b)*(p-c)?'s=',sqrt(m)retu27.求二元方程的根(分三种情况:两个不等实根,两个相等实根,两个不等虚根)cleai=val['i']input'请输入系数='toainput'请输入系数='tobinput'请输入系数='tocj=b^2-4*a*cdocasecasej0x1=(-b+sqrt(j))/(2*a)x2=(-b-sqrt(j))/(2*a)?'x1=',x1?'x2=',x2casej=0x=(-b)/(2*a)?'x=',xotherwise?'存在两个不等虚根'endcaseretu28.输入任意一个五位数,前后对应位置上的数据进行交换重新排列(例:25984→48952)cleainpu'请输入一个五位数:'tobdimea[5]a[5]=int[b/10000]i=int[b/1000]a[4]=mod(i,10)j=int[b/100]a[3]=mod[j,10]a[1]=mod[b,10]d=(b-a[1])/10a[2]=mod(d,10)?space(2)fork=1to5??str(a[k],1)endforretu29.找出一个3x3矩阵的鞍点,即该位置上的元素在该行上最大,在该列上最小(也有可能没有鞍点)cleadimea(3,3)form=1to3forn=1to3inpu'请输入矩阵值='toa[m,n]endforendforfori=1to3max=a[i,1]t=ik=1forj=1to3ifmax=a[i,j]max=a[i,j]t=ik=jendifendformin=a[1,k]forz=1to3ifmin=a[z,k]min=a[z,k]t1=zendiendfift1=l?'存在鞍点=',a[t,k]endifendfor30.求S(n)=a+aa+aaa+...+aaa....aaa(其中有n个a)之值,a是一个数字,n和a由键盘键入(例如:2+22+222+22222+22222,此时n=5)cleainput'请输入a='toainput'请输入n='tons=0m=0fori=1tonm=m+a*10^(i-1)s=s+mendfor?'s=',sretu
本文标题:VF30道程序设计题参考答案
链接地址:https://www.777doc.com/doc-4800563 .html