Delphi复习资料及习题.doc_第1页
Delphi复习资料及习题.doc_第2页
Delphi复习资料及习题.doc_第3页
Delphi复习资料及习题.doc_第4页
Delphi复习资料及习题.doc_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

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

文档简介

Delphi参考复习要点及题目1.结构化程序设计的基本原则,程序中采用的三种控制结构,顺序、分支和循环2.关于对象的叙述。对象的属性,对象的方法。3.与数学表达式对应的Object Pascal表达式:如4.Delphi应用程序中项目文件、备份文件等各类的扩展名5.各个组件的属性要掌握,重点如:按钮,Edit,ListBox,Timer,DBGrid,MaksEdit,Canvas6.常用组件使用和循环操作第一题 填空1.本程序根据用户选择的运算符对输入的二个操作数进行运算,并显示运算结果。设计界面和运行界面如图所示。其中,运算符是一个含有4个单选按纽的RadioGroup1对象。 下面是单击“运算”按钮的事件处理程序,请根据功能要求完成程序填空。procedure TForm1.Button1Click(Sender: TObject);/运算var x1,x2,y :Integer;begin x1 := StrToInt( Edit1. ); x2 := StrToInt( Edit2. ); Case .ItemIndex of 0: y := x1 + x2 ; 1: y := x1 - x2; 2: y := x1 * x2; 3: y := x1 Div x2; End; Edit3. := IntToStr( );end;答案 text text RadioGroup1 text y2. 本程序设计界面和运行界面如下图所示: 程序的功能是:用户在edit1中输入一个正整数n,然后按“计算”按钮,程序计算1n中奇数之和,并在edit2中显示计算结果。请完成程序填空:procedure TForm1.Button1Click(Sender: TObject); /“计算”按钮var i , n, sum : integer ;beginsum := 0 ;i := 1 ;n := StrToInt(edit1. ); /读入正整数nwhile i = n /循环语句begin if odd( i ) then sum := ; i := i +1 ;end; edit2.Text :=IntToStr( ); /将结果在编辑框中显示end;在程序中,odd为系统函数,其功能为: 。参考答案 Text do sum + i sum 判断奇偶性的函数(若输入值为奇数,函数值为真,否则为假)。多窗体;打开、保存文件对话框用法3.本程序由主窗体form1和子窗体form2组成,设计界面如下图所示: 主窗体上建立的对象有Panel1、Animate1、Button1(加载AVI文件)、Button2(退出)、Button3(播放)、Button4(停止)和OpenDialog1。子窗体上建立的对象有Label1、BitBtm1(Yes)、BitBtm2(No)。单击“加载AVI文件”按钮,会弹出打开文件对话框。用户指定一个.avi的文件后,动画文件加载到Animate1显示区中。单击“播放”按钮可播放动画,单击“停止”按钮可停止播放。单击“退出”按钮,会弹出确认对话框(Form2)。如果用户按“Yes”键,程序结束;如果按“No”键,返回主窗体。下面是Unit1的代码部分,请在下划线处完成程序填空。implementation$R *.dfmuses ;procedure TForm1.Button1Click(Sender: TObject); /加载AVI文件begin if then animate1.FileName := ; end;procedure TForm1.Button2Click(Sender: TObject); /退出beginif = mrYes then close ;end;procedure TForm1.Button3Click(Sender: TObject); /播放begin animate1.Play(1,animate1.FrameCount,0) ;end;procedure TForm1.Button4Click(Sender: TObject); /停止begin animate1. ;end;end.参考答案1、 unit2 opendialog1.Execute opendialog1.FileName form2.ShowModal stop4. 本程序由主窗体form1和子窗体form2组成,界面如下图所示: 主窗体上建立的对象有Memo1、Button13、OpenDialog1、SaveDialog1。子窗体上建立的对象有Label1、BitBtm1(Yes)、BitBtm2(No)。单击“打开文件”按钮(Button1),会弹出打开文件对话框。用户指定一个文本文件后,文件内容加载到编辑区中(Memo1)。单击“保存文件”按钮(Button1),会弹出保存文件对话框。用户输入文件名后,缓冲区内容保存到指定文件中。单击“退出”按钮,会弹出确认对话框(Form2)。如果用户按“Yes”键,程序结束;如果按“No”键,返回主窗体。下面是Unit1的代码部分,请在下划线处完成程序填空。implementation$R *.dfmuses ;procedure TForm1.Button1Click(Sender: TObject); /打开文件beginif then memo1.Lines.LoadFromFile( ); end;procedure TForm1.Button2Click(Sender: TObject); /保存文件beginif savedialog1.Execute then (savedialog1.FileName); end;procedure TForm1.Button3Click(Sender: TObject); /退出beginif = mrYes then close ;end;end.参考答案 unit2 opendialog1.Execute opendialog1.FileName memo1.Lines.SaveToFile form2.ShowModal数据库操作(重点! 各个组件用法要熟练掌握,表操作要牢记)5. 数据库mydb中有关系表student,其结构如下:student(sno学号,sname姓名,sex性别,birthday生日)现编写一个学生信息浏览程序,设计界面和运行界面如下图所示。 在下划线处填写相应数据库组件的属性值: Database1. DatabaseName : mydb Table1. DatabaseName : mydb Table1. TableName : student Table1. Active : Datasource1.DataSet : DBNavigator1. DataSource : DBEdit2. DataSource : DBEdit2. DataField : 参考答案 True Table1 DataSource1 DataSource1 sname6. 本程序的功能是实现对dep表(系)student表(学生)的主从查询。用户可以依次查询系的记录,也可以通过指定系号,查找并定位到指定的记录。每当显示一个系的记录后,系统自动显示该系的学生记录。设计界面和运行界面如下: 在Form1上建立的主要对象及连接如下:Database1Table1(与dep表相连)DataSource1DBEdit1DBEdit3Database1Query1DataSource2DBGrid1(显示学生信息)Edit1、Button1(查找)、Button2(下一记录)、Button3(上一记录)等。Query1的SQL语句是:select *from studentwhere dno = :dno下面是Unit1单元的代码实现部分,请完成程序填空。implementation$R *.dfmprocedure TForm1.Button2Click(Sender: TObject); /下一记录begin table1. ;end;procedure TForm1.Button3Click(Sender: TObject); /上一记录begin table1. ;end;procedure TForm1.Button1Click(Sender: TObject); /查找begin table1. (dno,edit1.Text,) ;end;procedure TForm1.Table1AfterScroll(DataSet: TDataSet);begin query1.Close ; query1.ParamByName(dno).Value := ; query1. ;end;end.参考答案 Next Prior Locate table1dno Open7.本程序实现一个简单的借书界面。程序的设计界面和运行界面如下图所示: 该程序涉及到数据库中的两张表:books(图书信息)和borrow(借书记录)。表的结构为:books(bno,书号,bname书名,num现有册数)borrow(rno 读者号,bno书号,rdate还书日期)其中,rno和bno都是字符型(3位)。在用户界面,操作员选中一本书、输入借书证号后,按“借书”键完成借书功能,即在borrow表中插入一条借书记录,并将books表中该书现有册数减1。该界面要实现以下合法性检查:l 当该读者已经借了此书,不能再借。l 当所借的书现有册数为0,不能再借。在Form1上建立的数据库组件对象及连接关系如下:Database1Table1(与books表相连)DataSource1DBGrid1(显示图书信息)Database1Query1、Query2其中为Table1建立了3个永久字段:Table1bno(书号)、Table1bname(书名)、Table1num(现有册数)。Query1的SQL语句如下:select bnofrom borrowwhere rno = :rno and bno = :bnoQuery2的SQL语句如下:insert into borrowvalues(:rno,:bno,:rdate)下面是Unit1的代码实现部分,请完成程序填空:implementation$R *.dfmprocedure TForm1.Button1Click(Sender: TObject); /“借书”按钮begin query1.Close ; query1.ParamByName(rno).Value := ; query1.ParamByName(bno).Value := ; query1.Open ; if query1bno null then begin showmessage(该读者正在借阅此书); exit ; end ; if = 0 then begin showmessage(该书已全部借出); exit ; end; query2.Close ; query2.ParamByName(rno).Value := edit1.Text ; query2.ParamByName(bno).Value := table1bno.Value ; query2.ParamByName(rdate).Value := date+15 ; query2. ; table1.Edit ; table1num.Value := table1num.Value - 1 ; /现有册数减1 table1. ;end;end.参考答案 edit1.Text table1bno.Value table1num.Value ExecSQL Post8.本程序实现一个简单的借书界面。程序的设计界面和运行界面如下图所示: 该程序涉及到数据库中的两张表:books(图书信息)和borrow(借书记录)。表的结构为:books(bno,书号,bname书名,num现有册数)borrow(rno 读者号,bno书号,rdate还书日期)其中,rno和bno都是字符型(3位)。在用户界面,操作员选中一本书、输入借书证号后,按“借书”键完成借书功能,即在borrow表中插入一条借书记录,并将books表中该书现有册数减1。该界面要实现以下合法性检查:l 当该读者已经借了此书,不能再借。l 当所借的书现有册数为0,不能再借。在Form1上建立的数据库组件对象及连接关系如下:Database1Table1(与books表相连)DataSource1DBGrid1(显示图书信息)Database1Table2(与borrow表相连,用于插入借书记录)Database1Query1其中为Table1建立了3个永久字段:Table1bno(书号)、Table1bname(书名)、Table1num(现有册数)。Query1的SQL语句如下:select bnofrom borrowwhere rno = :rno and bno = :bno下面是Unit1的代码实现部分,请完成程序填空:implementation$R *.dfmprocedure TForm1.Button1Click(Sender: TObject); /“借书”键begin query1.Close ; query1.ParamByName(rno).Value := ; query1.ParamByName(bno).Value := ; query1.Open ; if query1bno null then begin showmessage(该读者正在借阅此书); exit ; end ; if then begin showmessage(该书已全部借出); exit ; end; table2. ( edit1.Text , table1bno.Value , date+15 ); /插入借书记录 table1. ; table1num.Value := table1num.Value - 1 ; / 现有册数减1 table1.Post ;end;end.参考答案 edit1.Text table1bno.Value table1num.Value = 0 InsertRecord Edit9. 本程序实现一个简单的选课界面。设计界面和运行界面如下图所示: 该程序涉及到数据库中的两张表:course表(课程信息)和sc表(选课记录)。表结构如下:course(cno 课号,cname课名,credit学分,ctime时间,quota名额)sc(sno学号,cno课号,grade成绩)在用户界面,操作员选中一门课、输入学号后,按“选课”键完成选课功能,即在sc表中插入一条选课记录,并将course表中该课程名额减1。该界面要实现以下合法性检查:l 当该学生已经选过此课,不能再选。l 当课程名额为0,不能再选。在Form1上建立的数据库组件对象及连接关系如下:Database1Table1(与course表相连)DataSource1DBGrid1(显示课程信息)Database1Query1、Query2其中为Table1建立了永久字段:Table1cno(课号)、Table1cname(课程名)、Table1quota(名额)等。Query1的SQL语句如下:select cnofrom scwhere sno = :sno and cno = :cnoQuery2的SQL语句如下:insert into scvalues( :sno , :cno , null )下面是Unit1的代码实现部分,请完成程序填空:implementation$R *.dfmprocedure TForm1.Button1Click(Sender: TObject); /选课begin query1.Close ; query1.ParamByName(sno).Value := ; query1.ParamByName(cno).Value := table1cno.Value ; query1.Open ; if null then begin showmessage(已选过该课程); exit ; end ; if = 0 then begin showmessage(没有名额); exit ; end; query2.Close ; query2.ParamByName(sno).Value := edit1.Text ; query2.ParamByName(cno).Value := table1cno.Value ; query2. ; table1. ; table1quota.Value := table1quota.Value - 1 ;/课程名额减1 table1. Post ;end;end.参考答案 edit1.Text query1cno table1quota .Value ExecSQL Edit10.本程序实现一个简单的选课界面。程序的设计界面和运行界面如下图所示: 该程序涉及到数据库中的两张表:course(课程表)和sc(选课表)。表结构如下:sc(sno 学号,cno课程号,grade成绩)course(cno课号,cname课名,quota名额)其中:sno和cno都是字符型。在用户界面,操作员选中一门书、输入学号后,按“选课”键,完成选课功能,即在sc表中插入一条选课记录,并将course表中该课程的名额减1。该界面要实现以下合法性检查:l 当该学生已经选过此课,不能再选。l 当所选课程名额已为0,不能再选。在Form1上建立的数据库组件对象及连接关系如下:Database1Table1(与course表相连)DataSource1DBGrid1(显示课程信息)Database1Table2(与sc表相连,用于插入选课记录)Database1Query1其中为Table1建立了3个永久字段:Table1cno(课程号)、Table1cname(课程名)、Table1quota(名额)。Query1的SQL语句如下:select cnofrom scwhere sno = :sno and cno = :cno下面是Unit1的代码实现部分,请完成程序填空:implementation$R *.dfmprocedure TForm1.Button1Click(Sender: TObject); /“选课”键begin query1.Close ; query1.ParamByName(sno).Value := ; query1.ParamByName(cno).Value := ; query1.Open ; if query1cno null then begin showmessage(已选过此课); exit ; end ; if then begin showmessage(没有名额); exit ; end; table2. ( edit1.Text , table1cno.Value , null ); table1.Edit ; table1quota.Value := table1quota.Value - 1 ; /名额减1 table1. ;end;end.参考答案 edit1.Text table1cno.Value table1quota.Value = 0 InsertRecord Post11.本程序的功能是实现对books表(图书)的浏览。用户可以依次查询图书记录,也可以通过指定书号,查找并定位到指定的图书记录。每当显示一本书时,系统自动显示该书的借阅信息(读者号、读者名和还书日期)。该程序用到数据库中的3张表:books(图书信息)、borrow(借书记录)、reader(读者信息)。设计界面和运行界面如下: 在Form1上建立的主要对象及连接如下:Database1Table1(books表)DataSource1DBEdit1DBEdit3Database1Query1DataSource2DBGrid1(显示借阅信息)Edit1、Button1(查找)、Button2(下一记录)、Button3(上一记录)等。Query1的SQL语句是:select borrow.rno , rname , rdatefrom borrow , readerwhere bno=:bno and borrow.rno = reader.rno下面是Unit1单元的代码实现部分,请完成程序填空。implementation$R *.dfmprocedure TForm1.Button2Click(Sender: TObject); /下一记录begintable1. ;end;procedure TForm1.Button3Click(Sender: TObject); /上一记录begintable1. ;end;procedure TForm1.Button1Click(Sender: TObject); /查找begin table1. (dno,edit1.Text,) ;end;procedure TForm1.Table1AfterScroll(DataSet: TDataSet);begin query1.Close ; query1.ParamByName(bno).Value := ; query1. ;end;end.参考答案 Next Prior Locate table1bno Open12.本程序由主窗体form1和子窗体form2组成,设计界面如下图所示: 主窗体上建立的对象有Image1、Button1(加载图片)、Button2(退出)、OpenDialog1。子窗体上建立的对象有Label1、BitBtm1(Yes)、BitBtm2(No)。单击“打开文件”按钮(Button1),会弹出打开文件对话框。用户指定一个图像文件后,图像加载到Image1显示区中。单击“退出”按钮,会弹出确认对话框(Form2)。如果用户按“Yes”键,程序结束;如果按“No”键,返回主窗体。下面是Unit1的代码部分,请在下划线处完成程序填空。implementation$R *.dfmuses ;procedure TForm1.Button1Click(Sender: TObject); /加载图片begin if then Image1.Picture.LoadFromFile( );end;procedure TForm1.Button2Click(Sender: TObject); /退出beginif = mrYes then ;end;end.参考答案 unit2 opendialog1.Execute opendialog1.FileName form2.ShowModal close第二题 编程题1.记住按钮事件处理程序的写法 procedure TForm1.Button1Click(Sender: TObject);2.编辑框取值的属性3.字符串连接,字符串与整数、浮点数之间的转换4.提示错误的方法 showmessage5.常用的 数学运算 DIV MOD6.IF-THEN 和 循环语句的写法.1、下图是本程序的设计界面(左)和运行界面(右): 在form1上建立的对象有:Label1Label5、Edit1Edit4、Button1(运算)和CheckBox1等。该程序实现除法运算。用户输入两个操作数,按除键后,整除结果显示在结果框中。输入的操作数必须是1100之间的整数。如果输入有误,程序要给出错误提示信息。如果“显示余数”复选框选中,则除法余数显示在余数框中,否则不显示余数。请编写单击“除键”按钮的事件处理程序。procedure TForm1.Button

温馨提示

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

评论

0/150

提交评论