资源描述:
《《程序设计上机练习》PPT课件》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、程序设计补充知识字符串比较的规律:同规格的字母比较,按字母的顺序排列,后面的大;大小写字母比较,大写字母大于小写字母;数字字符比较,按数值的大小排列,数值大的大;字母与数字比较,数字(0~9)均小于字母;空格比数字、标点、字母等常见符号都小。程序设计例题例1某储户在取款机上提取x元现金,计算钞票总张数最少(假设x只能为50的整数倍)。CLEARINPUT"请输入取款金额:"TOxY1=INT(x/100)x=x-100*y1Y2=INT(x/50)?"100元钞票的张数:",Y1?"50元钞票的张数:",Y2例2设A=10,B=20,将它们的值互换后输出。问题分析:交换两个
2、变量的值需要借助第三个变量,例如建立一个临时变量T,根据分析,写出程序如下:A=10B=20T=AA=BB=T?"A=",A?"B=",BCANCEL程序设计例题例3问题的提出:例如:铁路托运行李,从甲地到乙地,按规定每张客票托运行李不超过50公斤时,每公斤0.45元,如超过50公斤,超过部分按每公斤0.65元计算。X>=50输入行李的重量:X0.45*X0.45*50+0.65*(X-50)输出应付费用结束YN刚才提出的问题,铁路托运行李,从甲地到乙地,按规定每张客票托运行李不超过50公斤时,每公斤0.45元,如超过50公斤,超过部分按每公斤0.65元计算。我们可以编写如
3、下程序加以实现:INPUT"请输入行李重量:"TOXIFX>=50P=0.45*50+0.65*(X-50)ELSEP=0.45*XENDIF?"应付运费为:",P,"元"CANCEL程序设计例题例4输入一个四位正整数,如果百位为6且可被3整除,输出该数input"请输入四位正整数"toabcifsubstr(str(abc,4),2,1)="6"andmod(abc,3)=0?"该数符合要求",abcendif例5判断输入的字符是属于字母、数字或特殊符号(字母、数字之外的符号)编写代码如下:SETTALKOFFACCEPT"请输入一个字符:"TOcVarDOCASECAS
4、EUPPER(cVar)<="Z".AND.UPPER(cVar)>="A"?cVar,"输入的是字母"CASEcVar<="9".AND.cVar>="0"?cVar,"输入的是数字"OTHERWISE?cVar,"输入的是特殊符号"ENDCASESETTALKON程序设计例题例6编写一个程序,使之能对输入的一个学生任意一门考试成绩输出是优秀、良好、中等、及格或不及格五个等级。具体要求:90~100为优秀、80~89为良好、70~79为中等、60~69为及格、0~59为不及格。INPUT"请输入一个成绩(0~100):"TOXDOCASECASEX>100.OR.X<0?
5、"输入的成绩出错!"CASEX>=90?"优秀"CASEX>=80?"良好"CASEX>=70?"中等"CASEX>=60?"及格"OTHERWISE?"不及格"ENDCASECANCEL例7求1+2+3+……+99+100问题分析:可以采用累加的方法,用循环变量x来产生1、2、3、……99、100的数;用累加变量s保存累加和,从1开始,每次增加1,送到累加变量s中。程序如下:CLEARs=0x=1DOWHILEx<=100s=s+xx=x+1ENDDO?"s=",sCANCEL例8求两个数中较大的数。编写程序如下:CLEARINPUT"INPUTA:"TOAINPUT"I
6、NPUTB:"TOBIFA>BX=AELSEX=BENDIF?X例9从键盘输入10任意数,并将10个数按从小到大的顺序输出。CLEARDIMENSIONX(10)FORI=1TO10X(I)=0II=STR(I,2)Input"请输入第"+II+"个数据"tox(I)ENDFORFORI=1TO10FORJ=I+1TO10IFX(I)>X(J)T=X(I)X(I)=X(J)X(J)=TENDIFENDFORENDFORFORI=1TO10?X(I)ENDFOR例10计算并输出1~100中整数的平方根,要求每屏20个数。CLEARNum=1DOWHILENum<=100?Nu
7、m,SQRT(Num)IFMOD(num,20)=0.AND.Num<>100WAIT"继续吗(Y/N)?"TOAnserWINDOWSIFUPPER(Anser)="N"ENDIFENDIFNum=Num+1ENDDO例11计算1-100之间所有奇数之和。CLEARs=0FORx=1TO100STEP2s=s+xENDFOR?"1-100之间所有奇数之和为:",s例12编写程序显示学生基本信息中入学成绩在570分以上的学生人数。STORE0TOXUSE学生SCANIF入学成绩>=570X=X+1ENDIFENDS