大学计算机论文.doc_第1页
大学计算机论文.doc_第2页
大学计算机论文.doc_第3页
大学计算机论文.doc_第4页
大学计算机论文.doc_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1.字符型,用字母C表示,数据包括中文字符,英文字符,数字字符,和其他ASCLL字符其长度范围是0254.2.数值型,用字母N表示,数值型包括数字,小数点,和正负号组成。数值型数据在内存中占8个字节,相应的字段变量长度为20.3.货币型,默认保留为4位小数占据8字节储存空间,用字母¥表示4.日期型,用D表示,日期默认格式为mm/dd/yy月日年 ,数据固定长度为8位 严格时间日期型格式:yyyy-mm-dd,hh:mm:ssa|p 严格日期命令格式 set strictdate to 0|1|2 “0不进行严格格式。1严格格式包括时间日期型。2严格格式”5.时间日期型用T表示 默认格式位mm/dd/yy hh:mm:ss日期时间型固定长度为8位6.逻辑型用T表示,只表示真假,长度固定为1位7.备注型,用M表示,没有数据长度限制,仅受磁盘空间大小限制。8.通用型,用G表示,长度不限无所不存。内存变量赋值命令:1. storeto 2.=内存变量显示命令:display memory like List memory like 内存变量文件的建立:save to 内存变量回复: restore from 内存变量清除: clear memory Releasealllike|except数值函数:绝对值:abs 平方根:sqrt 指数函数:exp 对数函数:log() log10()取整函数:int() ceiling() floor()取余函数: mod(/) 四舍五入函数:round(,)字符函数:宏代换函数:&.字符表达式求字符串长度函数:len(字符型表达式)求子串位置函数:at (,) atc (,)取字串函数:left(,)从左开始 right(,)从右开始 substr(,)数值1,2为起始位置删除字符串前后空格函数:ltrim() 前导空格 rtrim() 尾部空格 alltrim()删除前后的空格 字符串替代函数:stuff(,)数据类型转换函数: 将字符转换成asscll码: asc() 将ascll值转换成相应字符函数:chr() 将字符串转换成日期或日期时间函数:ctod()换成日期型数据 ctot()换成日期时间型 将数值换成字符串函数:str(,) 将数值1得值换成字符串,字符串的长度有2决定,小数位数有3决定 将字符串转换成数值函数:val() 字符表达式: 连接运算:+ - 包含运算:$ 1包含在2里 日期和时间表达式:+ + 结果将来某一天 - 结果为过去的某个日期 - 结果为两个日期之间相差的天数。 + 结果为若干秒后的日期时间- 结果为若干秒前的时间日期-结果为两日期相差的秒数 程序文件的建立与执行: 建立或修改程序文件(1)命令:modify command (文件名)|? Modify flie (文件名)|? (2) 菜单: 执行: do 顺序结构模式:1. 程序注释命令:note | 注释 &注释2. 常用状态设置命令:(1)置会话模式:set talk on/off(2)置打印状态:set print on/off (3)置屏幕状态:set console on/off(4)置缺省驱动器和目录:set default to 交互式输入命令:1. 字符串接受命令: Acceptto2. 任意数据输入命令:Input :3. 单个字符接受命令: Waittowindoenowalttimeout选择结构程序:if else Endif 例如。 根据输入的学生姓名,在学生表中查找学生记录。 Set talk off Use 学生 Name=space(8) 10 ,5 say “请输入学生姓名:” get name Read Locate for 姓名= name If found () Display Else 12 ,5 say “对不起,该单位无此人!” Endif Set talk on Use Return多分枝选择语句:do case Case Case Case otherwise Endcase例如:在学生表中查找“周文杰的记录,根据其姓名和年龄确定Set talk offUse 学生Locate for 姓名=”周文杰”If .not.eof () Do case Case 性别=”男” ?”请参加拔河比赛”Case性别=”女” and year (date ()-year(出生日期)25 ?”请参加投篮比赛”Case性别=”女” and year (date ()-year(出生日期)=25 ?”请参加1500米比赛” Endcase?”无此学生”EndifSet talk onReturn循环程序: do while exit loop enddo 例如: 1. 逐条输出学生表中1984年出生的学生的记录。ClearUse 学生Index on year (出生日期) tag csrqsySeek 1984Do while year (出生日期) = 1984 DisplaySkipEnddoUseReturn2.求1100之间全部奇数之和。 Set talk off Store 0 to x,y Do while .t. X=x+1 Do case Case int(x/2)=x/2 Loop Case x=100 Exit Otherwise Y=y+x Enddo ?”0100之间的奇数之和为:”,y Set talk on Return五、程序设计 共1题 (共计20分)*题目:编程求出1*1+2*2+.+n*n=1000中满足条件* 的最大的n。* 将结果存入变量OUT中。* 请按照题目要求,在下面编写程序代码。 *-SET TALK ONSET LOGERRORS ON &确定VF是否将编译错误信息送到一个文本文件中OUT=-1*Program*S=0 N=1Do while s=5 Out=int(h*1000+1)/1000ElseOut=int(h*1000)/1000Endif?out* End *DO YZJ WITH OUTSET LOGERRORS OFFSET TALK OFF3.编程将两个两位数的正整数a、b合并形成一个整数放在c中。合并的方式是:将a数的十位和个位数依次放在c数的百位和个位上,b数的十位和个位数依次放在c数的十位和千位上。SET TALK ONa=45b=12C=int(a/10)*100+a%10+int(b/10)*10+b%10*1000Out=c?outSET TALK OFF4.编程求出并显示 6!+7!+8!+9! 的值。N=0For i=6 to 9 S=1 For j=1 to iS=s*jEndforn=n+sEndfor?”n=”,n5.编程求P=1+1/(2x2)+1/(3x3)+ 1/(10x10)。P=0M=1 p=0Do while m=b and b=c ?a,b,cCase a=c and c=b ?a,c,bCase b=a and a=c ?b,a,cCase b=c and c=a ?b,c,aCase c=a and a=b ?c,a,bCase c=b and b=a ?c,b,aendcase 7.编程求一组数中大于平均值的数的个数。dime a(4)a(1)=3a(2)=5a(3)=7a(4)=9S=0For i=1 to 4S=s+a(i)EndforS=s/4N=0For j=1 to 4If a(j)sN=n+1EndifEndfor?n8.统计出学生.DBF表中籍贯为河南的人数。(利用DO WHILEENDDO循环语句实现)。方法一:Use 学生S=0Locate for 籍贯=“河南”Do while not eof() S=s+1 continueenddo?”共有河南人“+str(s,2)+”名”Use方法二:Do while not eof() if 籍贯=“河南” S=s+1 endif skipenddo9.统计字符串中字母t、i、s的个数。注意:字母不分大、小写。set talk offclears=This is a studentstore 0 to i1,i2,i3for i=1 to len(s)m=subs(s,i,1) do case case m=t .or. m=T i1=i1+1 case m=i .or. m=I i2=i2+1 case m=s .or. m=s i3=i3+1 endcaseendfor? i1,i2,i3SET TALK ON10.设计程序实现按学号查找记录,直到输入*为止。SET TALK OFFUSE XSDA ACCEPT 请输入要查找的学号: to XHDO WHILE XH!= *LOCATE FOR 学号=xh IF FOUND() ?学号,姓名,入学成绩 ELSE ? 无此学号 ENDIF ACCEPT 请继续输入要查找的学号: TO XHenddoUSERETU四、程序改错 共1题 (共计10分)*题目:ZHG.DBF是一个职工信息文件,其中包含编号(C 5)、姓名* (C 8)、性别(C 2)、政治面目(C 4)、出生日期(D 8)等字* 段。性别用字符串男或女表示,政治面目用字符串* 党员、团员或群众表示。此文件已按政治面目建立* 了索引,索引文件名是ZHG.IDX。* 程序MODI1.PRG功能是:显示输出所有政治面目为群众* 的女职工的姓名和出生日期(每行输出一个职工的信息)* 在屏幕上*-*注意:不可以增加或删除程序行,也不可以更改程序的结构。*-set talk offclear*FOUND* 方法一:USE ZHG use zhg index zhg loca for 政治面目= 群众 seek 群众*FOUND*DO WHILE !EOF() do while 政治面目= 群众 IF 性别=女 DISP 姓名,出生日期*FOUND* ENDd endif SKIPENDDOUSESET TALK ON方法二:USE ZHG loca for 政治面目= 群众*FOUND*DO WHILE !EOF() IF 性别=女 DISP 姓名,出生日期*FOUND* endif SKIP continueENDDO*2.【程序改错】*-*题目:求1+5+9+13+97的和*-*注意:不可以增加或删除程序行,也不可以更改程序的结构。*-SET TALK OFFS=0*FOUND*N=0 n=1DO WHILE N=97*FOUND* S=S+1 s=s+n N=N+4*FOUND*ENDWHILE enddo? SSET TALK ON 三、【程序填空】*-*功能:显示所有100以内的6的倍数的数,并求这些数的和。* 请在【】处添上适当的内容,使程序完整。*- SET TALK OFFI=1*SPACE*【s=0】DO WHILE I=100*SPACE* 【exit】 OTHERWISE Y=Y+X ENDCASE*SPACE*【enddo】? 0-100之间的奇数之和为: , YSET TALK ONRETURN30.【程序填空】有10个评委为参赛的选手打分,选手最后得分为:去掉一个最高分和一个最低分后其余8个分数的平均值。请编写一个程序实现。SET TALK OFFcleardime a(10)input 请为参赛的选手打分: to a(1)max=a(1)min=a(1)*SPACE*for i=【2】 to 10 input to a(i) if maxa(i) min=a(i) endifendfs=0for i=1 to 10*SPACE* s=s+ 【a(i)】endf*SPACE*? 选手最后得分为:,【(s-max-min)/8】set

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论