浙大远程数据库应用程序设计离线作业必做.docx
《浙大远程数据库应用程序设计离线作业必做.docx》由会员分享,可在线阅读,更多相关《浙大远程数据库应用程序设计离线作业必做.docx(20页珍藏版)》请在冰豆网上搜索。
浙大远程数据库应用程序设计离线作业必做
第一章
1、Delphi2007forwin32集成开发环境由哪几部件组成?
简述各部分的功能。
Ø主窗口:
提供系统菜单栏、系统工具条和组件面板
Ø设计视图:
提供项目程序设计工作区域
Ø代码编辑器:
提供程序代码编写、快捷的代码编写功能、对象观察器
Ø结构视图:
窗体设计器工作状态,用于显示窗体中可视化控件的继承结构;窗体设计器代码编辑状态,用于显示源代码对象的继承结构,同时提供代码编写错误提示信息;
Ø项目管理器、模型视图和数据管理器
项目管理器:
显示工程结构和工程文件管理;
模型视图:
提供项目逻辑表示
数据管理器:
用于浏览数据库中的对象,也可以用于创建和管理数据链接;
Ø欢迎界面:
引导进入delphi开发,同时显示最近打开过的项目,还是显示网络和RSS的最新新闻、资源;
Ø历史代码页面:
记录项目文件历史编辑过程日志,当前单元文件的编辑日期及作者;
Ø帮助系统:
Borlanddelphi2007快速启动指南;Delphi2007在线帮助;Mircrosoft.NETFramework在线帮助;Borland软件开发技术支持和相关网站;
2、Delphi单元文件主要由哪几个部分组成?
简述各部分的功能。
Ø库单元文件头:
其中声明了库单元的名字.
ØInterface部分:
由保留字interface开始,结束于保留字implementation,它用来声明引用的单元,常量,数据类型,变量,过程和函数.在Interface部分声明的变量,常量,数据类型,过程,函数都可以供外部引用,对整个程序而言是共有的.也就是说,对于所有引用该单元的单元来说,这些声明都是可见和可访问的.
在Interface部分,只需写出过程和函数的首部,具体的定义是在下面的implementation部分给出的.
Interface部分又可分为多个可选部分,分别为单元引入部分(uses),常量说明部分,类型说明部分,变量说明部分,过程和函数声明部分.
ØImplementation部分:
Implementation部分分为两部分.一部分是声明部分,包括单元引用,常量,类型,变量,过程和函数的声明,这一点和Interface部分相似.
区别有两点:
(1):
在Implementation部分声明的只对本单元是公共的,可见的,其他单元即使引用了该单元,也不能访问它们.
(2):
在Implementation部分声明的过程和函数,不需要遵循先声明后定义的规则,而可以直接写出过程和函数的定义.另一部分是在Interface部分声明的过程和函数的定义.
4.Initialization部分:
用于初始化该库单元,此处的代码最先执行.如果多个库单元中包含Initialization部分那么它们的执行顺序就和Program的uses部分引用单元的出现顺序是一致的.
ØFinalization部分:
通常用于释放Initialization部分分配的资源.如果多个库单元中包含Finalization部分,其执行顺序和Initialization部分正好相反.
3、模仿例1.1,编写一个简单的窗体程序,显示如下内容:
***************************
欢迎学习Delphi语言!
***************************
提示:
使用三个TLabel直接设置其Caption属性值。
第二章
1、Delphi语言中有哪些常用的数据类型?
变量在使用前必须先定义,如何定义各种数据类型的变量?
1.有序类型:
整型、字符型、布尔型(Boolean)、枚举类型、子界类型
2.实数类型:
实型、日期时间类型、字符串类型、可变类型
Var变量名:
数据类型//适用于整型、字符型、布尔型变量定义
TYPE
typeName=(val1,…..,valn)//枚举类型变量定义
TYPE
类型标示符=上界值…下界值//子界类型定义
type
TDateTime=typeDouble;
2、注释语句有哪几种形式?
1.花括号注释
{##############}
2.圆括号/型号注释
(*################*)
3.双斜杠注释
//################
3、编写程序,输入两个浮点数,输出其和、差、积各为多少。
programProject2;
{$APPTYPECONSOLE}
uses
SysUtils;
var
x,y:
real;
sum,n,m:
real;
begin
try
{TODO-oUser-cConsoleMain:
Insertcodehere}
writeln('请输入2位浮点数:
');
readln(x,y);
sum:
=x+y;
n:
=x-y;
m:
=x*y;
writeln('和为:
',sum);
writeln('差为:
',n);
writeln('积为:
',m);
readln;
except
onE:
Exceptiondo
Writeln(E.Classname,':
',E.Message);
end;
end.
4、编写程序,输入5个整数,输出这5个数的平均值。
programProject2;
{$APPTYPECONSOLE}
uses
SysUtils;
var
a,b,c,d,e:
integer;
sum:
integer;
avg:
integer;
begin
try
{TODO-oUser-cConsoleMain:
Insertcodehere}
writeln('请输入5个整数:
');
read(a,b,c,d,e);
sum:
=a+b+c+d+e;
avg:
=sumdiv5;
writeln('5个整数的平均数为:
',avg);
readln;
except
onE:
Exceptiondo
Writeln(E.Classname,':
',E.Message);
end;
end.
第三章
1、循环语句有哪几种形式?
break语句与continue语句有何异同?
While语句
直到循环
For语句
辅助控制语句
循环嵌套
break语句与continue语句有何异同?
Continue语句只结束本次循环,而不是终止整个循环的执行,而break语句则是结束整个循环过程,不再判断循环条件是否成立;
2、某市出租车3公里的起租价为6元,3公里以外按1.5元每公里计费。
现编写程序,要求:
输入行车里程数,输出应付车费。
programProject2;
{$APPTYPECONSOLE}
uses
SysUtils;
var
km:
integer;
paykm:
integer;
pay:
real=0;
begin
try
{TODO-oUser-cConsoleMain:
Insertcodehere}
writeln('请输入行车里程数:
');
readln(km);
if(km>0)and(km<=3)then
begin
pay:
=6;
writeln('输出应付车费为:
',pay,'元整');
end
elseif(km>3)then
begin
paykm:
=km-3;
pay:
=6+paykm*1.5;
writeln('输出应付车费为:
',pay,'元整');
end
else
writeln('输出应付车费为:
0元整');
readln;
except
onE:
Exceptiondo
Writeln(E.Classname,':
',E.Message);
end;
end.
3、编写计算阶乘的函数,在主程序中调用函数求4!
+6!
+9!
。
programProject1;
{$APPTYPECONSOLE}
uses
SysUtils;
functionff(n:
integer):
integer;
varf:
integer;
begin
if(n=0)or(n=1)then
f:
=1
else
f:
=ff(n-1)*n;
ff:
=f;
end;
varx,y,z,fact:
integer;
begin
x:
=4;
y:
=6;
z:
=9;
fact:
=ff(x)+ff(y)+ff(z);
writeln('4!
+6!
+9!
=',fact);
readln;
try
{TODO-oUser-cConsoleMain:
Insertcodehere}
except
onE:
Exceptiondo
Writeln(E.Classname,':
',E.Message);
end;
end.
4、有两个红球、三个黄球、四个白球、任意取四个球,其中必须有一个红球,编程输出所有可能的方案。
programProject1;
{$APPTYPECONSOLE}
uses
SysUtils;
var
red,yellow,white:
integer;
begin
red:
=1;
forred:
=1to2do
begin
yellow:
=0;
whileyellow<4-reddo
begin
white:
=4-red-yellow;
yellow:
=yellow+1;
writeln('红球个数:
',red,'黄球个数:
',yellow,'白球个数:
',white);
end;
end;
readln;
try
{TODO-oUser-cConsoleMain:
Insertcodehere}
except
onE:
Exceptiondo
Writeln(E.Classname,':
',E.Message);
end;
end.
第四章
1、什么是类?
什么是对象?
什么是方法?
三者有何关系?
Ø类就是对一类事物的总称
例如:
吉普车、跑车、垃圾车等等他们都是属于汽车这个类的
汽车就是一个类,这个类代表了所有的车,虽然有各种各样的车
但是它们都有一些共同的特性:
比如它们都有车门、发动机、变速箱等
Ø对象就是类的实例
比如上面的汽车类
有很多种分类,有跑车、轿车、越野车等
它们的基本构造都是类似的
这时候我们就称跑车、轿车、越野车等属于汽车类的对象或实例
Ø方法通俗来讲就是实例或对象拥有的一些功能
例如:
汽车的对象或实例都可以启动、停车、打转向灯等
2、构造函数和析构函数的功能分别是什么?
构造函数:
创建类的实例(对象),并对对象的数据成员进行初始化
析构函数:
销毁调用的对象并且释放对象的内存
3、Delphi提供了几种异常类?
运行期间库异常类:
I/O异常;堆异常;整数异常;浮点异常;类型匹配异常;类型转换异常;硬件异常;
组件异常类:
预定义异常;通用异常;
其他异常:
流异常;图形异常;打印异常;
4、Delphi提供了哪两种常用的异常处理结构?
使用try……except…..end处理异常
使用try……finally….end处理异常
第五章
1、按照组件在运行期间是否可见,Delphi中的组件