VF程序设计复习重点:课后习题与考试答案解析

版权申诉
0 下载量 33 浏览量 更新于2024-07-03 收藏 917KB DOC 举报
"VF程序设计复习资料,共36页,包含了VF程序设计的课后习题答案、历年考试题目及解答,旨在帮助学生复习和理解VF程序设计的重点内容。资料中答案直接标注在题目后,用特定符号区分说明和文件创建信息。此外,资料还强调了上机实践的重要性以加深记忆。" VF程序设计是关于Visual FoxPro (VF)的课程,主要探讨数据库系统的基础知识、操作基础以及进一步的编程概念。以下是详细的解释: 1. **数据库系统基础知识**: - **数据库**:数据库是存储在外存储器中的一组相关数据,由数据库管理系统集中管理。 - **数据库管理系统(DBMS)**:DBMS是一种系统软件,用于管理和控制数据,确保数据的共享、冗余减少、独立性,并提供安全性和并发控制。 - **数据库系统**:它是由硬件、软件、数据和人员组成的,为用户提供信息服务的计算机系统。 2. **实体间的关系**: - **1对1关系**:例如,一个人对应一个身份证,一个身份证也只对应一个人。 - **1对多关系**:一个班主任可以管理多个学生,而每个学生只有一个班主任。 - **多对多关系**:一个人可以去多个酒吧,每个酒吧也可以接待多人。 3. **数据模型**: - **层次模型**、**网络模型**和**关系模型**是数据库的常见类型。VF属于**关系模型**,在关系模型中,数据以表格形式表示,行代表记录,列代表字段。 4. **关系数据库的基本运算**: - **选择**:从表中选取满足特定条件的记录。 - **投影**:选取表中特定列,生成新的表。 - **联接**:将两个或更多表的记录合并,基于它们之间的相关字段。 5. **VF操作基础**: - **菜单操作方式**:适合不熟悉VF命令的用户,直观但操作速度慢。 - **命令操作方式**:输入命令快速执行操作,效率高,需要掌握VF命令。 - **程序工作方式**:通过编写程序实现更简洁的交互,提高效率。 这些知识点构成了VF程序设计的核心内容,不仅涉及理论知识,还强调了实践操作和应用能力的培养。通过深入理解和练习,学习者可以掌握VF的基本概念和技能,为进一步的数据库管理和应用开发打下坚实基础。

Fortran程序: parameter(pi=3.1415926535) real kn real,allocatable :: vs(:,:),vf(:,:) a=1234.; n0=7; ny=100; u0=1. b=a/float(n0); ds=b/float(ny); nx=n0*ny errs=1.e-6; errf=1.e-6 allocate(vs(0:nx,0:ny),vf(0:nx,0:ny)) vs=0.; vs(1:nx-1,ny)=u0; vf=vs !---------------------------------------------------------- open(1,file='nvs.dat') do i=1,nx-1; x=float(i)*ds do j=1,ny-1; y=float(j)*ds err=1.; nc=0 do while(err.gt.errs) fnc=2.*float(nc)+1.; kn=pi*fnc/a t=sin(kn*x)*(1.-exp(-2.*kn*y))/(fnc*(exp(kn*(b-y))-exp(-kn*(b+y)))) err=abs(t) vs(i,j)=vs(i,j)+t nc=nc+1 enddo write(1,*) x,y,nc vs(i,j)=vs(i,j)*(4.*u0/pi) enddo enddo close(1) open(1,file='vs.dat') do i=0,nx; x=float(i)*ds do j=0,ny; y=float(j)*ds write(1,*) x,y,vs(i,j) enddo enddo close(1) !---------------------------------------------------------- err=1. do while(err.gt.errf) do i=1,nx-1; x=float(i)*ds do j=1,ny-1; y=float(j)*ds t=0.25*(vf(i+1,j)+vf(i-1,j)+vf(i,j+1)+vf(i,j-1)) if(i.ne.1.or.j.ne.1) then err0=abs(t-vf(i,j)); err=amax1(err,err0) else err=abs(t-vf(i,j)) endif vf(i,j)=t enddo enddo enddo open(1,file='vf.dat') do i=0,nx; x=float(i)*ds do j=0,ny; y=float(j)*ds write(1,*) x,y,vf(i,j) enddo enddo close(1) !--------------------------- a0=0.5*a; b0=0.8*b open(1,file='a0.dat'); open(2,file='b0.dat') i=nint(a0/ds); do j=0,ny; write(1,*) float(j)*ds,vs(i,j),vf(i,j); enddo; close(1) j=nint(b0/ds); do i=0,nx; write(2,*) float(i)*ds,vs(i,j),vf(i,j); enddo; close(2) !--------------------------- write(*,*) err,i0,j0 deallocate(vs,vf) stop end

2023-06-07 上传