完整的delphi程序设计教程课后习题答案

合集下载

Delphi程序设计试题及解答

Delphi程序设计试题及解答

《Delphi 程序设计》试题及解答 卷6一、填空题(20分,每空2分)1、现实世界中对象具有自己的状态和行为。

对应着,面向对象技术中的对象可以具有自己的属性和 。

2、结构化程序设计要求程序中仅采用顺序、分支和循环三种控制结构,其中每种结构只能有 和一个出口。

3、Delphi 应用程序中单元文件的扩展名是 。

4、与数学表达式 53)(cos 2++xb a 对应的Object Pascal 表达式是 。

5、对于下面的条件表达式:((3 <= x )AND (x < 0)) OR (x in [1..10])当x = 3 时, 该表达式的值为 。

6、ListBox 对象列表框中的内容是通过 属性来进行设置的。

7、如果想设计DBGrid 对象的列标题和对齐方式,可以对DBGrid 对象的 属性进行设置。

8、时钟组件(Timer )能有规律的以一定时间间隔触发 事件9、能够实现格式化输入的编辑框组件是10、利用 对象的LineTo 等方法,可以绘制基本图形。

二、单项选择题(20分,每题2分)1、Delphi 程序设计的基本特点是( )。

A . 可视化程序设计B . 代码程序设计C . 事件驱动编程D . A 和C2、进度显示组件ProgressBar 的当前进度可以通过( )属性设置。

A . StepB .ScrollC . PositionD .Max3、下列变量命名正确的是( )。

A .7ABCB . My7C . page@2D .cmd..14、“x 是小于200的非负数”的Object Pascal 表达式是( )。

A .0 ≤ x < 200B . x >= 0, x<200C .(x >=0) AND (x < 200) D . (x >= 0 ) OR (x<200)5、在窗体上建立多页面的用户界面,需要首先建立的对象是( )A . TabControlB .PageControlC . HeaderControlD .PageScroller6、能够删除edit1中内容的语句是( )。

Delphi程序设计试题二及答案

Delphi程序设计试题二及答案

Delphi 程序设计试题二及答案一、填空题(20分,每空2分)1、现实世界中对象具有自己的状态和行为。

对应着,面向对象技术中的对象可以具有自己的属性和 。

2、结构化程序设计要求程序中仅采用顺序、分支和循环三种控制结构,其中每种结构只能有 和一个出口。

3、Delphi 应用程序中单元文件的扩展名是 。

4、与数学表达式 53)(cos 2++xb a 对应的Object Pascal 表达式是 。

5、对于下面的条件表达式:((3 <= x )AND (x < 0)) OR (x in [1..10])当x = 3 时, 该表达式的值为 。

6、ListBox 对象列表框中的内容是通过 属性来进行设置的。

7、如果想设计DBGrid 对象的列标题和对齐方式,可以对DBGrid 对象的 属性进行设置。

8、时钟组件(Timer )能有规律的以一定时间间隔触发 事件9、能够实现格式化输入的编辑框组件是10、利用 对象的LineTo 等方法,可以绘制基本图形。

二、单项选择题(20分,每题2分)1、Delphi 程序设计的基本特点是( )。

A . 可视化程序设计B . 代码程序设计C . 事件驱动编程D . A 和C2、进度显示组件ProgressBar 的当前进度可以通过( )属性设置。

A . StepB .ScrollC . PositionD .Max3、下列变量命名正确的是()。

A.7ABC B.My7 C.page@2 D.cmd..14、“x 是小于200的非负数”的Object Pascal表达式是()。

A.0 ≤x < 200 B.x >= 0, x<200C.(x >=0) AND (x < 200)D.(x >= 0 ) OR (x<200)5、在窗体上建立多页面的用户界面,需要首先建立的对象是()A.TabControl B.PageControlC.HeaderControl D.PageScroller6、能够删除edit1中内容的语句是()。

Delphi习题

Delphi习题

第一章 概述习题一、填空题1.Delphi 是_____公司开发的_______工具。

2、利用对象查看器可以设置窗体或组件的_____。

3、一个Delphi 应用程序必有一个_____文件和至少一个单元文件。

4、在Delphi 应用程序中,工程文件的后缀名是_____,单元文件的后缀名是_____。

5、Delphi 应用程序设计基于_____语言。

二、简答题1.如何启动Delphi7?2.Delphi 的可视化开发环境由哪几部分组成?每部分的功能是什么?3.简述Delphi 可视化编程的一般步骤。

第二章object pascal 语言基础习题一﹑填空题1. 在object pascal 语言中,常量定义部分以 保留字开头; 变量定义部分以 保留字开头。

2. s:=0;for i:=3 to 14 dos:=s+i;运行后S 的值为 。

3. 过程与函数的区别在于 。

4. 与数学表达式 53)(cos 2++xb a 对应的Object Pascal 表达式是5. 结构化程序设计要求程序中仅采用 三种控制结构。

6. 以下语句x:=30; y:=3; while y<=x do y:=y+y;的循环执行次数是____________次。

7. 程序 For I:=1 to 5 do for j:=2 to I do writeln('*'); 输出的'*'个数为_______个。

8.与数学表达式2253)(sin x xb a ++对应的Object Pascal 表达式是9.Break 语句和Continue 语句的区别是 。

10.运算符分为 和二.选择题1.“x 是小于1000的非负数”的Object Pascal表达式是()A.0 ≤ x < 1000 B. (x >= 0 ) OR (x<1000)C.x >= 0, x<1000 D. (x >=0) AND (x < 1000)2.设a是布尔变量,其它是整型变量,下面正确的赋值语句是( )A、 x=y/7B、 x:=y:=z+1C、 a:=x=y mod zD、 x+y:=z3.下列常量定义合法的是()A、 CONST width=7;B、 CONST case='7';C、 CONST 1A=7.9;D、 CONST century=2006 div 100;4.以下运算符中运算优先级最高的是()A、 +B、 ORC、 >=D、 DIV5.设a是布尔变量,其它是整型变量,下面正确的赋值语句是()。

delphi程序试题答案

delphi程序试题答案

一、单选题1.在RadioGroup 组件中有 4 个单选框,当选中第 2 个单选框时,RadioGroup 组件中的ItemIndex 属性值应为( B )。

A.0 B.1 C.2 D.32.函数和过程的区别为( A )。

A.函数执行后返回一个值,而过程不需返回值 B.过程执行后返回一个值,而函数不需返回值C.过程在被调用时,能执行某种特殊功能并能返回到调用它的地方 D.函数在被调用时,能执行某种特殊功能并能返回到调用它的地方3.32 AND 27 的值是( B )。

A.59 B.0 C.27 D.324.窗体与数据模块的扩展名是( B )。

A..dcu B..dfm C..pas D..dpr5.Delphi 中用什么函数来析构一个组件( C )。

A.Constructor B.Destroy C.Free D.Create6.一个指针变量ptr 的域成员fs 访问的方法是( C )。

A.ptr->fs B.ptr.fs C.ptr^fs D.ptr@fs7.Type aarrays=[1…8,1…5] of integer ,该类型定义了多少个下标元素( D )。

A.45 B.54 C.48 D.408.Delphi 的所有类都是从什么类继承下来的( B )。

A.Tcomponent B.TobjectC.Tstream D.Tnull9.定义构造函数时用到的保留字是( C )。

A.Class B..implementation C.create D.construction10.下列组件中属于可视组件的是哪一个( D )。

A.Tdatasource B.Topendialog C.Ttable D.Tscrollbar11.设有过程procedure pro(V AR x,y:integer); 变量a , b 为整型变量,其值分别为5、6,则合法的过程调用语句是( D )。

A.Pro(5,6) B.pro(5,b) C.pro(a,6) D.pro(a,b)12.下列组件中不能获取焦点的是( B )。

Delphi程序设计-作业1

Delphi程序设计-作业1

Delphi 程序设计-作业1班级 ) 姓名 高 分数(一)填空题1、Delphi 是基于面向对象技术的。

在Delphi 中,属性表示 对象中的数据 ,方法是对象 能够执行的动作 ,事件是能够引起对象 反映的条件 。

2、Delphi 应用程序中单元文件的扩展名是 pas ;应用程序中项目文件的扩展名是 dpr 。

3、写出下列表达式的值:Trunc(-1.3)+Int(1.4) = 0Sqr(3) + StrToInt(‘19’) = 283-2 <> Int(1.1) = FALSE4、与数学表达式 53)(cos 2++xb a 对应的Object Pascal 表达式是 sqr (cos(a+b))/(3*+x)+5 。

5、对于下面的条件表达式:3 <= x AND x < 0 OR x in [1..10]当x = 3 时, 该表达式输出为 True 。

6、在Delphi 集成开发环境中,如果想要直接设置或者修改对象的属性,可以通过 对象观察器 中的属性窗口直接进行设置。

(二)单项选择题1、下列变量命名正确的是( B )。

A 7ABCB Program7C page@21D program2、设a = True ,b = True ,c = False ,以下表达式值为False 的是( D )。

A .a or b or c B. ( not a or b ) and ( b or c )C. False or not a and b or not cD. not a and not b and (12 in [1..10] )3、Delphi程序设计的基本特点是(D )。

A.可视化程序设计 B. 代码程序设计C.事件驱动编程 D. A和C4、下列哪个常量说明语句是正确的(D )。

A. const x := (c < 16);B. const x : 16 ;C. const x := 16 ; D const x = 16 ;5、“x 是小于100的非负数”的Object Pascal表达式是( C )。

Delphi程序设计试题及解答1-1-111

Delphi程序设计试题及解答1-1-111

《Delphi 程序设计》试题及解答 卷6一、填空题(20分,每空2分)1、现实世界中对象具有自己的状态和行为。

对应着,面向对象技术中的对象可以具有自己的属性和 。

2、结构化程序设计要求程序中仅采用顺序、分支和循环三种控制结构,其中每种结构只能有 和一个出口。

3、Delphi 应用程序中单元文件的扩展名是 。

4、与数学表达式 53)(cos 2++xb a 对应的Object Pascal 表达式是 。

5、对于下面的条件表达式:((3 <= x )AND (x < 0)) OR (x in [1..10])当x = 3 时, 该表达式的值为 。

6、ListBox 对象列表框中的内容是通过 属性来进行设置的。

7、如果想设计DBGrid 对象的列标题和对齐方式,可以对DBGrid 对象的 属性进行设置。

8、时钟组件(Timer )能有规律的以一定时间间隔触发 事件9、能够实现格式化输入的编辑框组件是10、利用 对象的LineTo 等方法,可以绘制基本图形。

二、单项选择题(20分,每题2分)1、Delphi 程序设计的基本特点是( )。

A . 可视化程序设计B . 代码程序设计C . 事件驱动编程D . A 和C2、进度显示组件ProgressBar 的当前进度可以通过( )属性设置。

A . StepB .ScrollC . PositionD .Max3、下列变量命名正确的是( )。

A .7ABCB . My7C . page@2D .cmd..14、“x 是小于200的非负数”的Object Pascal 表达式是( )。

A .0 ≤ x < 200B . x >= 0, x<200C .(x >=0) AND (x < 200) D . (x >= 0 ) OR (x<200)5、在窗体上建立多页面的用户界面,需要首先建立的对象是( )A . TabControlB .PageControlC . HeaderControlD .PageScroller6、能够删除edit1中内容的语句是( )。

Delphi程序设计-作业2

Delphi程序设计-作业2

Delphi程序设计-作业2班级姓名分数(一)填空题1、当程序运行时,如果要求窗体中的某个按钮不再显示,可以将该按钮的Visible 属性设置为false 即可2、复选框对象是否被选中,是由其checked 属性决定的。

3、Delphi 程序与数据库之间进行数据交换一般要由多个数据库组件协作完成。

如果用户要查询数据库中的一条信息,该指令通过界面组件发出,经数据源组件到达数据集组件。

数据集组件利用自身的读写功能,通过组件与数据库建立连接从数据库中取得数据。

再经组件送到用户界面组件中显示。

4、Delphi中设计应用程序的菜单时,有主菜单和弹出菜单两种菜单,它们各自“Standard”页上的一个组件创建。

主菜单由mainmenu 组件创建;而弹出菜单用popupmenu 组件创建。

窗体中的多页面设计要用到pagecontrol 组件。

5、计时器控件能有规律的以一定时间间隔触发OmTimer 事件,并执行该事件过程中的程序代码。

6、要使ListBox支持多项选择,则应设置Multiselect 属性的值。

7、在只有一个显示区域的状态条组件上显示的文本内容,需要将其Simpletext 属性设置为该文本的内容。

8、Image组件可通过设置其Autosize 属性为True使之根据图像自动调整大小;而通过设置其Stretch 属性为True,使其加载的图片能自动调整大小以适应Image。

9、执行下面程序段后x := 5 ;FOR K := 1 TO 3 DOX := X + K ;结果K= 4 X = 1110、使用窗体的ShowModal 方法可以将一个窗体作为一个模式窗体(modal form)来打开。

(二)单项选择题1、编辑框中的文本发生改变时被触发的事件是(B )A.AutoSize B.OnChange C.SetFocus D.SetFocus2、下列说法正确的是( B )A.组件必须是可视的,这样用户才能使用。

Delphi程序设计

Delphi程序设计

Delphi程序设计2235考试类别:填空题单项选择题判断题程序填空题《Delphi程序设计》试题1及解答一、填空题(20分,每空2分)二、单项选择题(30分,每题3分)1、Delphi程序设计的基本特点是()。

A.可视化程序设计B.代码程序设计C.事件驱动编程D.A和C2、修改窗体的标题时,应当在属性页中设置的属性是()。

A.Caption B.Name C.Text D.Label3、下列哪个常量说明语句是正确的()。

A. const x := (c < 16);B. const x : 16 ;C. const x := 16 ; D const x = 16 ;4、“x 是小于100的非负数”的Object Pascal表达式是()。

A.0 ≤x < 100 B.x >= 0, x<100C.(x >=0) AND (x < 100) D.(x >= 0 ) OR (x<100)5、工具栏上的一个SpeedButton按钮如果要设置为状态按钮,则正确设置的方法是()A.将SpeedButton按钮的GroupIndex属性设置为0,且AllowAllUp属性设置为True。

B.将SpeedButton按钮的GroupIndex属性设置为0,且Allow AllUp属性设置为False。

C.将SpeedButton按钮的GroupIndex属性设置为非0值,且AllowAllUp属性设置为True。

D.将SpeedButton按钮的GroupIndex属性设置为非0值,且AllowAllUp属性设置为False。

6、表达式30 +19 div 2 的值是()。

A.37 B.49C.39 D.407、在RadioGroup 组件中有 4 个单选框,当选中第2 个单选框时,RadioGroup 组件中的ItemIndex 属性值应为()。

A.0 B.1 C.2 D.38、以下能够触发编辑框(Edit)组件OnChange事件的操作是()A.鼠标单击编辑框B.鼠标双击编辑框C.在编辑框中选择文本D.在编辑框中输入文本9、现建立一个简单报表,仅包含报表标题栏、数据栏和汇总栏,则在Bands属性的子属性中,不需要选择的是()A.Title B.DetailC.HasColumnHeader D.Summary10、只能输出、而不能输入的数据感知控件是()A.DBEdit B.DBTextC .DBRadioGroupD .DBCheckBox三、判断题,请给下列论述中正确的打上“√”,错误的打上“ ”(10分,每题2分)1、( ) const c := 80 的说明语句是合法的。

面向对象程序设计Delphi第一次作业答案202011

面向对象程序设计Delphi第一次作业答案202011

中山大学面向对象Delphi期中作业答案(提交Delphi源代码和exe文件)一、编写相应的Delphi程序,别离实现以下科学计算功能:1.利用公式!1!31!21!111n e+⋯⋯++++=编出程序计算自然对数底e,精准到10-6。

[解答]unit NaturalLog;interfaceusesWindows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls,math;typeTForm1 = class(TForm)Label1: TLabel;Edit1: TEdit;Button1: TButton;Button2: TButton;Label2: TLabel;Label3: TLabel;Label4: TLabel;Edit2: TEdit;procedure Button1Click(Sender: TObject);procedure Button2Click(Sender: TObject);private{ Private declarations }public{ Public declarations }end;varForm1: TForm1;implementation{$R *.dfm}procedure (Sender: TObject);function factorial(n:integer):double;var i:integer;prod:double;beginprod:=1;if n>0 thenbeginfor i:=2 to n doprod:=prod*i;factorial:=prod;endelseif n=0 then factorial:=1else showmessage('阶乘参数不能为负数!') end;vareps,addor,s:double;i,max_i:integer;begineps:=strtofloat;max_i:=strtoint;i:=1;s:=1;repeataddor:=1/factorial(i);s:=s+addor;i:=i+1;until ((i>max_i) or (addor<eps));if i>max_i then:='不收敛,迭代次数超过:'+else:='级数收敛于:'+floattostr(s)+' '+chr(13)+'迭代次数:'+floattostr(i); end;procedure (Sender: TObject);beginclose;end;end.2. 利用公式11212312341****** 23353573579π=+++++编出程序计算π。

2024版Delphi程序设计实用教程第2版

2024版Delphi程序设计实用教程第2版

Delphi程序设计实用教程第2版•Delphi程序设计概述•Delphi语言基础•面向对象编程基础•窗体和控件应用•文件操作与数据库访问技术•网络编程技术•调试、优化和发布部署•实战项目:XXX系统设计与实现Delphi程序设计概述Delphi是一种高级编程语言,由Borland公司开发,以Object Pascal为基础。

Delphi支持面向对象的程序设计,具有丰富的组件库和强大的开发环境。

Delphi广泛应用于Windows桌面应用程序、Web应用程序、数据库应用程序等开发领域。

Delphi语言简介下载并安装Delphi开发环境,选择合适的版本和组件库。

配置开发环境,包括设置编译器选项、调试器选项、代码编辑器风格等。

安装和配置数据库连接驱动,以便在Delphi中访问数据库。

Delphi开发环境安装与配置第一个Delphi程序创建一个新的Delphi项目,选择适当编译和运行程序,查看程序执行结果。

的项目类型和模板。

在代码编辑器中编写程序代码,实现简单的功能,如输出“HelloWorld”。

010204 Delphi程序结构Delphi程序由项目文件、单元文件和窗体文件等组成。

项目文件包含程序的整体设置和引用单元的信息。

单元文件包含程序中的代码和数据,是实现程序功能的基本单元。

窗体文件包含程序中的界面元素和事件处理代码,是实现用户交互的重要部分。

03Delphi语言基础包括Integer 、Boolean 、Char 、String 、Float 等常用类型。

标准数据类型如数组、记录、集合、文件等复合数据类型。

构造类型用于访问内存地址的特殊数据类型。

指针类型可存储不同类型数据的灵活数据类型。

变体类型Delphi 数据类型介绍如何在Delphi 中声明变量并为其赋值。

变量声明与赋值讲解常量的概念、定义方法及在程序中的应用。

常量定义与使用阐述局部变量、全局变量的概念及其作用范围。

变量作用域变量与常量运算符与表达式算术运算符介绍加、减、乘、除等基本算术运算。

Delphi程序设计试题一及答案

Delphi程序设计试题一及答案

Delphi 程序设计试题一及答案一、填空题(20分,每空2分)1、现实世界中对象具有自己的状态和行为。

对应着,面向对象技术中的对象可以具有自己的属性和 。

2、Delphi 应用程序中项目文件的扩展名是 。

3、结构化程序设计要求程序中仅采用顺序、分支和循环三种控制结构,其中每种结构只能有 和一个出口。

4、在Delphi 集成开发环境中,如果想要直接设置或者修改对象的属性,可以通过对象查看器(Object Inspector )中的 窗口直接进行设置。

5、ListBox 对象列表框中的内容是通过 属性来进行设置的。

6、时钟组件(Timer)能有规律的以一定时间间隔触发 事件。

7、如果让界面上的一个按钮变为不可用,需要将它的 属性设为False 。

8、Image 组件可通过设置其 属性为True 使Image 组件根据图像的大小自动调整显示窗口大小。

9、Delphi 的一个项目由若干文件组成,其中文件名后缀含有“~”的文件为 。

10、与数学表达式 53)(cos 2++xb a 对应的Object Pascal 表达式是二、单项选择题(30分,每题3分)1、Delphi 程序设计的基本特点是( )。

A . 可视化程序设计B . 代码程序设计C . 事件驱动编程D . A 和C2、修改窗体的标题时,应当设置form 的属性是( )。

A .CaptionB . NameC . TextD . Label3、下列哪个常量说明语句是正确的( )。

A. const x := (c < 16);B. const x : 16 ;C. const x := 16 ; D const x = 16 ;4、“x 是小于100的非负数”的Object Pascal表达式是()。

A.0 ≤x < 100 B.x >= 0, x<100C.(x >=0) AND (x < 100)D.(x >= 0 ) OR (x<100)5、编辑框(Edit)中的文本发生改变时引发的事件是()。

【精品】《面向对象程序设计Delphi》第二次作业答案11

【精品】《面向对象程序设计Delphi》第二次作业答案11

《面向对象程序设计D e l p h i》第二次作业答案11中山大学期末考试样题(参考答案)课程名称:面向对象程序设计(Delphi)专业:年级:学号: 姓名: 成绩:一、选择题(每小题2分,共40分)1.Delphi是基于__________语言的面向对象的开发工具,使用其集成开发环境可以快速地建立应用程序,在开发数据库应用程序方面具有独特的优势。

A. C++B. Object PascalC. BasicD. SQL2.Delphi提供了一个丰富的__________, 它由一些称作“组件”的预制对象所组成, 组件提供了可视设计应用程序的能力。

A. DLLB. OCXC. IDED. VCL3.Delphi中,____________是有效的标识符。

A. CalculateValueB. abc@C. beginD. program4.Delphi中,____________语句用于从For语句、While语句或Repeat语句中强行退出。

A. BreakB. ContinueC. ExitD. Halt5.将数据及对数据的操作方法封装在一起,作为一个相互依存、不可分离的整体,成为一个_________ 。

A. 类B. 对象C. 属性D. 方法6.在面向对象中,________是指在一般类中定义的属性或行为,被特殊类继承之后,可以具有不同的数据类型或表现出不同的行为。

这使得同一个属性或行为在一般类及其各个特殊类中具有不同的语义。

A. 封装B. 重载C. 抽象D. 多态7.类通过一个简单的___________ ,与外界发生关系。

A. 外部接口B. 函数C. 过程D. 全局变量8.Delphi中,对象编辑器的_________页标签可用来观察、设置窗体上组件或窗体本身设计时的属性。

A. PropertiesB. EventsC. UnitD. Project9.Delphi中,____________是特殊的单元文件,可理解为主单元文件,或者说主程序,而其它的单元文件可以看作是被项目文件所调用的子程序。

delphi 数据库编程侯太平 童爱红主编 课后习题第六章答案《数据库应用技术》

delphi 数据库编程侯太平 童爱红主编 课后习题第六章答案《数据库应用技术》

delphi 数据库编程侯太平童爱红主编课后习题第六章答案《数据库应用技术》delphi数据库编程侯太平童爱红主编课后习题第六章答案《数据库应用技术》第六章:1、应用程序用以请求一个连到odbc数据源的连接(connection)的名字是a。

a、 dsnb。

阿多克。

odbcd。

联系2、在odbc层次结构中,d包含在odbc32.dll中,对用户是透明的,其任务是管理odbc驱动程序,是odbc中最重要的部件.a、数据源名称B.ODBC管理器C.ODBC apid。

司机经理3、在datebasedesktop程序中,b就是数据表所在的子目录或数据库文件名的替代名称。

a、数据库别名B.dsnc.bde4、使用databasedesktop程序,不能完成下列的d功能。

a.创建和维护数据库表b。

创建和维护数据库别名c.执行sql语句d。

创建三层结构的数据库程序5、请说出下列名词的含义BDE:由Borland公司开发的数据库引擎。

其基本思想是将应用程序与特定数据库隔离开来,并为用户提供统一的界面。

oledb:是一个低层的数据访问接口,它向应用程序提供了一个统一的数据访问方法,用它可以访问各种数据源,包括传统的关系型数据库、电子邮件及自定义的商业对象。

dsn:应用程序用以请求一个连到odbc数据源的连接(connection)的名字。

ADO:微软设计的最新数据访问技术,与OLEDB一起提供通用数据访问。

数据库别名:数据库别名与工作区相对应起来,可以理解为存放数据库表的容器。

工作目录:数据库桌面工作目录是打开和保存文件的默认目录。

它也是“打开文件”对话框和“保存文件”对话框中的默认路径。

名为workdir的目录是默认的工作目录。

私有目录:私有目录通常在多用户环境中使用,用来存放当前用户的中间结果,如临时创建的表格等。

在多用户环境下,每个用户应当有一个私有目录。

默认的私有目录的数据库别名为priv.6.DSN可分为三种类型:系统DSN、用户DSN和文档DSN。

delphi实验指导书含答案

delphi实验指导书含答案

选择结构和循环结构的程序设计 ..................................................................5
[实验三] 截取钢管,使剩料最短 ....................................................................8 [实验四] 简单计算器 .......................................................................................8 第三章 数组、过程及函数 ........................................................................................9 [实验一] [实验二] 输入一串字符, 统计字母, 数字及汉字等的数量 ................................ 10 编写一评分程序 ............................................................................. 11
[实验五] ScrollBar 控制 shape 中的颜色 ......................................................... 25 第八章 键盘和鼠标事件 .......................................................................................... 26 [实验一] [实验二] [实验三] 第九章 [实验一] [实验二] 设计一鼠标演示程序 ......................................................................... 26 判断输入框全为数字否,实现 Enter 键代替 Tab 键 ........................... 27 由键盘的方向键或鼠标控制图片的移动 .......................................... 28 paintbox 中画正弦, 椭圆, 画弧, 文本, 色带, 渐变, 五角星 ....................... 29 动态生成控件数组 ............................................................................. 32

完整的delphi程序设计教程课后习题答案

完整的delphi程序设计教程课后习题答案

1.239页1题小时钟procedureTForm1.Timer1Timer(Sender: TObject);varxt,yt:integer;h,m,s,ms:word;begindecodetime(time,h,m,s,ms);xt:=paintbox1.clientwidth div 2; yt:=paintbox1.clientheight div 2; paintbox1.refresh;paintbox1.canvas.moveto(xt,yt); paintbox1.canvas.pen.width:=3; paintbox1.canvas.lineto(xt+round(s in((60*h+m)/(12*60)*2*pi)*100), yt-round(cos((60*h+m)/(12*60)*2 *pi)*100));paintbox1.canvas.moveto(xt,yt); paintbox1.canvas.pen.width:=2; paintbox1.canvas.lineto(xt+round(s in(m/60*2*pi)*140),yt-round(cos(m/60*2*pi)*140)); paintbox1.canvas.moveto(xt,yt); paintbox1.canvas.pen.width:=1; paintbox1.canvas.lineto(xt+round(s in(s/60*2*pi)*180),yt-round(cos(s/60*2*pi)*180)); end;end.2.239页3题求两点间的距离procedureTForm1.Button1Click(Sender: TObject);beginpaintbox1.Refresh;formpaint(sender);end;procedureTForm1.FormPaint(Sender: TObject);varxt,yt:integer;ax,ay,bx,by:integer;beginxt:=paintbox1.ClientWidth div 2; yt:=paintbox1.Clientheight div 2; paintbox1.canvas.MoveTo(xt,0);paintbox1.canvas.lineTo(xt,2*yt);paintbox1.canvas.MoveTo(0,yt);paintbox1.canvas.lineTo(2*xt,yt);ax:=strtoint(edit1.text);ay:=strtoint(edit2.text);bx:=strtoint(edit3.text);by:=strtoint(edit4.text);edit5.Text:=floattostr(sqrt((ax-bx)*(ax-bx)+(ay-by)*(ay-by)));paintbox1.canvas.MoveTo(xt+ax*10,yt-ay*10);paintbox1.canvas.lineTo(xt+bx*10,yt-by*10);end;end.3.226页5题输入学生成绩varForm1: TForm1;typestudentrecord=recordxh,xm:string[6];xb:boolean;yy,sx,dz:integer;end;implementation{$R *.dfm}procedureTForm1.Button1Click(Sender:TObject);var t:studentrecord;f,f1:file of studentrecord;p1,p2:boolean;beginassignfile(f,'c:\mydocuments\stu.dat');reset(f);assignfile(f1,'c:\mydocuments\stu1.dat');rewrite(f1);while not eof(f) dobeginread(f,t);p1:=(t.sx>=85)and(t.yy>=85)and(t.dz>=85);p2:=t.sx+t.yy+t.dz>=270;if p1 or p2 thenwrite(f1,t);end;closefile(f);closefile(f1);end;procedureTForm1.FormCreate(Sender:TObject);var t:studentrecord;f:file of studentrecord;xingbie:string;beginassignfile(f,'c:\mydocuments\stu.dat');reset(f);while not eof(f) dobeginread(f,t);if t.xb thenxingbie:='男'elsexingbie:='女';listbox1.Items.Add(t.xh+' '+t.xm+''+xingbie+' '+inttostr(t.sx)+' '+inttostr(t.yy)+' '+inttostr(t.dz));end;closefile(f);end;procedureTForm1.Button2Click(Sender:TObject);beginclose;end;end.4.226页8题保存获得奖学金者varForm1: TForm1;typestudentrecord=recordxh,xm:string[6];xb:boolean;yy,sx,dz:integer;end;implementation{$R *.dfm}procedureTForm1.Button1Click(Sender: TObject);var t:studentrecord;f,f1:file of studentrecord;p1,p2:boolean;beginassignfile(f,'c:\mydocuments\stu.dat');reset(f);assignfile(f1,'c:\mydocuments\stu1.dat');rewrite(f1);while not eof(f) dobeginread(f,t);p1:=(t.sx>=85)and(t.yy>=85)and(t. dz>=85);p2:=t.sx+t.yy+t.dz>=270;if p1 or p2 thenwrite(f1,t);end;closefile(f);closefile(f1);end;procedureTForm1.FormCreate(Sender: TObject);var t:studentrecord;f:file of studentrecord;xingbie:string;beginassignfile(f,'c:\mydocuments\stu1.dat');reset(f);while not eof(f) dobeginread(f,t);if t.xb thenxingbie:='男'elsexingbie:='女';listbox1.Items.Add(t.xh+' '+t.xm+' '+xingbie+' '+inttostr(t.sx)+' '+inttostr(t.yy)+' '+inttostr(t.dz)); end;closefile(f);end;procedureTForm1.Button2Click(Sender: TObject);beginclose;end;end.5.166页22题素数procedureTForm1.Button1Click(Sender:TObject);typesushuset=set of byte;varsushu:sushuset;i,j,n,m,k:longword;s,s0:string;beginn:=strtoint(edit1.text);m:=strtoint(edit2.text);if n mod 2=0 then n:=n+1;k:=m-n;if k>255 thenshowmessage('范围太大,请重新输入区间端点!')elsebeginsushu:=[0..k];for i:=2 to n-1 dofor j:=n to m doif j mod i =0 thensushu:=sushu-[j-n];for i:=n to m div 2 dofor j:= i+1 to m doif j mod i =0 thensushu:=sushu-[j-n];s:='';s0:='';for i:=n to m doif i-n in sushu thenbeginif length(s0+' '+inttostr(i))>60 thenbegins:=s+s0+chr(13);s0:=''end;s0:=s0+' '+inttostr(i);end;s:=s+s0;label1.caption:=s;groupbox1.Top:=(panel1.Top-groupbox1.height) div 2;end;end;procedureTForm1.FormCreate(Sender:TObject);begingroupbox1.Top:=(panel1.Top-groupbox1.height) div 2;end;procedureTForm1.Edit1KeyPress(Sender:TObject; var Key: Char);var j:set of char;beginj:=['0'..'9',#8];if not(key in j) then key:=#0;end;end.6.148页12题整除的数implementation{$R *.dfm}function d7(x:integer):boolean;beginif x mod 7=0 then d7:=trueelse d7:=false;end;function d17(x:integer):boolean;beginif x mod 17=0 then d17:=trueelse d17:=false;end;procedureTForm1.FormActivate(Sender:TObject);varn:integer;beginfor n:=1000 to 4000 doif d7(n)and d17(n) thenmemo1.Lines.Add(inttostr(n));end;end.7.148页17题求斐波那契数列问题implementation{$R *.dfm}function fib(n:integer):int64; begincase n of1,2:fib:=1;elsefib:=fib(n-1)+fib(n-2);end;end;procedureTForm1.Button1Click(Sender: TObject);vark:integer;beginmemo1.lines.clear;for k:=1 to strtoint(edit1.text) do memo1.lines.add(format('%2d % 3d',[k,fib(k)]));end;end.8.120页10题,判断是否是闰年procedureTForm1.Button1Click(Sender: TObject);vary,m:integer;beginy:=strtoint(edit1.text);m:=strtoint(edit2.text);label3.Caption:='';if((y mod 4 = 0) and (y mod 100 <> 0)) or (y mod 400=0) then label3.Caption:=edit1.text+'年是闰年,'elselabel3.Caption:=edit1.text+'年不是闰年,';case m of3,4,5:Label3.Caption:=Label3.Capt ion+edit2.Text+'月份是春天,';6,7,8:Label3.Caption:=Label3.Capt ion+edit2.Text+'月份是夏天,';9,10,11:Label3.Caption:=Label3.C aption+edit2.Text+'月份是秋天,'; elseLabel3.Caption:=Label3.Caption+e dit2.Text+'月份是冬天,';end;case m of1,3,5,7,8,10,12:Label3.Caption:=Label3.Caption+'共有31天,';4,6,9,11:Label3.Caption:=Label3.Caption+'共有30天,';elseif((y mod 4 = 0) and (y mod 100<> 0) or (y mod 400=0)) thenLabel3.Caption:=Label3.Caption+'共有29天,'elseLabel3.Caption:=Label3.Caption+'共有28天,';end;end;end.9.120页11题求和的procedureTForm1.Button1Click(Sender:TObject);varn,k,j:integer;s:int64;beginn:=strtoint(edit1.text);j:=0;s:=0;for k:=1 to n dobeginj:=j+k;s:=s+j;end;panel2.Caption:=format('s= %d',[s]);edit1.setfocus;end;procedureTForm1.Edit1KeyPress(Sender:TObject; var Key: Char);var b:boolean;beginb:=(key<>#8)and(key<#48)or(key>#57);if b then key:=#0;end;end.10.120页12题男人,女人,小孩各有多少人procedureTForm1.Button1Click(Sender:TObject);varx,y,z:integer;p:string;beginmemo1.clear;for x:=0 to 16 dofor y:=0 to 24 dobeginz:=30-x-y;if 3*x+2*y+z/1=50 thenbeginp:=format('%3d %3d %3d',[x,y,z]);memo1.lines.add(p);end;end;end;end.11.98页2题求长方体的表面积procedureTForm1.Button1Click(Sender:TObject);vars,l,k,h:double;beginl:=strtofloat(edit1.text);k:=strtofloat(edit2.text);h:=strtofloat(edit3.text);s:=2*l*k+2*k*h+2*l*h;label1.Caption:=floattostr(s);end;end.12.98页5题计算圆的面积和周长procedureTForm1.Edit1KeyPress(Sender:TObject; var Key: Char);varr:real;b:boolean;beginb:=(key<>#8)and(key<>'.')and(key <>#13)and(key<#48)or(key>#57); if b then key:=#0;if key =#13 thenbeginif edit1.text='' then edit1.text:='0'; r:=strtofloat(edit1.text);if radiobutton1.Checked then label1.Caption:=format('圆的面积为:%f',[pi*r*r]);if radiobutton2.Checked then label1.Caption:=format('圆的周长为:%f',[2*pi*r]);if radiobutton3.Checked then label1.Caption:=format('圆的面积为:%f'+chr(13)+ '周长为: %f',[pi*r*r,2*pi*r]);edit1.SelectAll;end;end;procedureTForm1.RadioButton1Click(Sende r: TObject);varsender0:tobject;key:char;beginsender0:=edit1;key:=#13;form1.edit1keypress(sender0,key); end;procedureTForm1.RadioButton2Click(Sende r: TObject);varsender0:tobject;key:char;beginsender0:=edit1;key:=#13;form1.edit1keypress(sender0,key); end;procedureTForm1.RadioButton3Click(Sende r: TObject);varsender0:tobject;key:char; beginsender0:=edit1;key:=#13;form1.edit1keypress(sender0,key);end;end.13.98页6题统计奇数和偶数的个数procedureTForm1.Button1Click(Sender:TObject);vark,j,n:word;begink:=0;n:=combobox1.items.count;for j:=1to n doif strtoint(combobox1.items[j-1])mod 2 = 0 thenk:=k+1;label1.caption:=format('共有:'+#13+'%d个偶数,'+#13+'%d个奇数。

Delphi实验二(附答案)

Delphi实验二(附答案)

实验二 选择结构程序设计一、实验目的1)掌握单分支结构语句:If …Then …;2)掌握双分支结构语句:If …Then …Else …;3)掌握多分支结构语句:Case …Of … End 。

二、实验要求(略)三、实验内容1.打开Console 应用程序Dlp0201.dpr ,实现输入一个整数x ,判断其能否既被3整除也能被7整除?如果能被3和7整除,则输出“Yes ”,否则输出“No ”。

输入包含1个整数,即整数x ;输出包含1个字符串,即“Yes ”或“No ”。

例如:输入:21输出:Yes2.打开Console 应用程序Dlp0202.dpr ,实现输入某学生的课程成绩score ,按如下公式输出成绩的等级。

⎪⎩⎪⎨⎧<≤<≤≤≤=60score 0Pass No 90score 60Pass100score 90Excellent grade 输入包含1个整数,即学生的课程成绩score ;输出包含1个字符串,即“Excellent ”、“Pass ”或“No Pass ”。

例如:输入:92输出:Excellent3.打开Console应用程序Dlp0203.dpr,实现输入3条线段长度,判断这3条线段构成的三角形类型。

如果不能构成三角形,则输出“No Triangle”,如果可以构成三角形,判断构成何种三角形(等边三角形、等腰三角形、一般三角形),分别输出“Equilateral Triangle”、“Isosceles Triangle”或“Triangle”。

输入包含3个整数,整数之间用空格隔开,分别表示3条线段的长度;输出包含1个字符串,表示判断结果(即“No Triangle”、“Equilateral Triangle”、“Isosceles Triangle”或“Triangle”)。

例如:输入:2 2 2输出:Equilateral Triangle4.打开项目Dlp0204.dpr,在标题为“水仙花数”的窗体Form1上,添加一个标题为“请输入3位整数”的标签Label1;然后再添加一个标题为“判断”的按钮Button1;最后添加两个文本内容为空的编辑框Edit1和Edit2。

电大《Delphi程序设计》2019-2020期末题库及答案

电大《Delphi程序设计》2019-2020期末题库及答案

《Delphi程序设计》2019-2020期末题库及答案一、单选题(共0题,共0分)1. “x 是小于1000的非负数”的Object Pascal表达式是()A、0≤x<1000B、(x>=0)OR(x<1000)C、x>=0,x<1000D、(x>=0)AND(x<1000)正确答案:D2. Delphi程序设计的基本特点是()A、可视化程序设计B、代码程序设计C、事件驱动编程D、A和C正确答案:D3.(0分)表达式50 +19 div 2 的值是()A、57B、69C、59D、60正确答案:C4. 结构化程序设计的基本原则或特点不包括()。

A、多态性B、自顶向下C、模块化D、逐步求精正确答案:A5.结构化程序设计的基本原则是取消()语句,程序中仅采用顺序、分支和循环三种控制结构。

A、ForB、WhileC、gotoD、Do正确答案:C6.利用对象监视器可以设置窗体或组件的( )。

A、方法B、属性C、外观D、执行代码正确答案:B7.通常控制组件在窗体中可见的属性是()A、VisibleB、NameC、ShowingD、Hint正确答案:A8.下列变量命名正确的是( )A、7ABCB、My7C、page@2D、cmd..1正确答案:B9.下列表达式中()不是布尔表达式。

A、A=3B、A div BC、A and BD、A>B正确答案:B10.下列说法错误的是( )A、窗体文件的扩展名为.dfmB、一个窗体对应一个窗体文件C、Delphi中的一个工程只包含一个窗体D、.~dpr和.~pas是备份文件,便于用户恢复到较早的一个项目版本。

正确答案:C11.下面哪个不是对象的三个要素之一( )A、事件B、名称C、属性D、方法正确答案:B12.BitBtn组件的哪个属性预定义了一些常用的位图按钮种类( )。

A、nameB、CaptionC、kindD、type正确答案:C13.以下能够触发编辑框(Edit)组件OnChange事件的操作是()。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1.239页1题小时钟procedureTForm1.Timer1Timer(Sender: TObject);varxt,yt:integer;h,m,s,ms:word;begindecodetime(time,h,m,s,ms);xt:=paintbox1.clientwidth div 2; yt:=paintbox1.clientheight div 2; paintbox1.refresh;paintbox1.canvas.moveto(xt,yt); paintbox1.canvas.pen.width:=3; paintbox1.canvas.lineto(xt+round(s in((60*h+m)/(12*60)*2*pi)*100), yt-round(cos((60*h+m)/(12*60)*2 *pi)*100));paintbox1.canvas.moveto(xt,yt); paintbox1.canvas.pen.width:=2; paintbox1.canvas.lineto(xt+round(s in(m/60*2*pi)*140),yt-round(cos(m/60*2*pi)*140)); paintbox1.canvas.moveto(xt,yt); paintbox1.canvas.pen.width:=1; paintbox1.canvas.lineto(xt+round(s in(s/60*2*pi)*180),yt-round(cos(s/60*2*pi)*180)); end;end.2.239页3题求两点间的距离procedureTForm1.Button1Click(Sender: TObject);beginpaintbox1.Refresh;formpaint(sender);end;procedureTForm1.FormPaint(Sender: TObject);varxt,yt:integer;ax,ay,bx,by:integer;beginxt:=paintbox1.ClientWidth div 2; yt:=paintbox1.Clientheight div 2; paintbox1.canvas.MoveTo(xt,0);paintbox1.canvas.lineTo(xt,2*yt);paintbox1.canvas.MoveTo(0,yt);paintbox1.canvas.lineTo(2*xt,yt);ax:=strtoint(edit1.text);ay:=strtoint(edit2.text);bx:=strtoint(edit3.text);by:=strtoint(edit4.text);edit5.Text:=floattostr(sqrt((ax-bx)*(ax-bx)+(ay-by)*(ay-by)));paintbox1.canvas.MoveTo(xt+ax*10,yt-ay*10);paintbox1.canvas.lineTo(xt+bx*10,yt-by*10);end;end.3.226页5题输入学生成绩varForm1: TForm1;typestudentrecord=recordxh,xm:string[6];xb:boolean;yy,sx,dz:integer;end;implementation{$R *.dfm}procedureTForm1.Button1Click(Sender:TObject);var t:studentrecord;f,f1:file of studentrecord;p1,p2:boolean;beginassignfile(f,'c:\mydocuments\stu.dat');reset(f);assignfile(f1,'c:\mydocuments\stu1.dat');rewrite(f1);while not eof(f) dobeginread(f,t);p1:=(t.sx>=85)and(t.yy>=85)and(t.dz>=85);p2:=t.sx+t.yy+t.dz>=270;if p1 or p2 thenwrite(f1,t);end;closefile(f);closefile(f1);end;procedureTForm1.FormCreate(Sender:TObject);var t:studentrecord;f:file of studentrecord;xingbie:string;beginassignfile(f,'c:\mydocuments\stu.dat');reset(f);while not eof(f) dobeginread(f,t);if t.xb thenxingbie:='男'elsexingbie:='女';listbox1.Items.Add(t.xh+' '+t.xm+''+xingbie+' '+inttostr(t.sx)+' '+inttostr(t.yy)+' '+inttostr(t.dz));end;closefile(f);end;procedureTForm1.Button2Click(Sender:TObject);beginclose;end;end.4.226页8题保存获得奖学金者varForm1: TForm1;typestudentrecord=recordxh,xm:string[6];xb:boolean;yy,sx,dz:integer;end;implementation{$R *.dfm}procedureTForm1.Button1Click(Sender: TObject);var t:studentrecord;f,f1:file of studentrecord;p1,p2:boolean;beginassignfile(f,'c:\mydocuments\stu.dat');reset(f);assignfile(f1,'c:\mydocuments\stu1.dat');rewrite(f1);while not eof(f) dobeginread(f,t);p1:=(t.sx>=85)and(t.yy>=85)and(t. dz>=85);p2:=t.sx+t.yy+t.dz>=270;if p1 or p2 thenwrite(f1,t);end;closefile(f);closefile(f1);end;procedureTForm1.FormCreate(Sender: TObject);var t:studentrecord;f:file of studentrecord;xingbie:string;beginassignfile(f,'c:\mydocuments\stu1.dat');reset(f);while not eof(f) dobeginread(f,t);if t.xb thenxingbie:='男'elsexingbie:='女';listbox1.Items.Add(t.xh+' '+t.xm+' '+xingbie+' '+inttostr(t.sx)+' '+inttostr(t.yy)+' '+inttostr(t.dz)); end;closefile(f);end;procedureTForm1.Button2Click(Sender: TObject);beginclose;end;end.5.166页22题素数procedureTForm1.Button1Click(Sender:TObject);typesushuset=set of byte;varsushu:sushuset;i,j,n,m,k:longword;s,s0:string;beginn:=strtoint(edit1.text);m:=strtoint(edit2.text);if n mod 2=0 then n:=n+1;k:=m-n;if k>255 thenshowmessage('范围太大,请重新输入区间端点!')elsebeginsushu:=[0..k];for i:=2 to n-1 dofor j:=n to m doif j mod i =0 thensushu:=sushu-[j-n];for i:=n to m div 2 dofor j:= i+1 to m doif j mod i =0 thensushu:=sushu-[j-n];s:='';s0:='';for i:=n to m doif i-n in sushu thenbeginif length(s0+' '+inttostr(i))>60 thenbegins:=s+s0+chr(13);s0:=''end;s0:=s0+' '+inttostr(i);end;s:=s+s0;label1.caption:=s;groupbox1.Top:=(panel1.Top-groupbox1.height) div 2;end;end;procedureTForm1.FormCreate(Sender:TObject);begingroupbox1.Top:=(panel1.Top-groupbox1.height) div 2;end;procedureTForm1.Edit1KeyPress(Sender:TObject; var Key: Char);var j:set of char;beginj:=['0'..'9',#8];if not(key in j) then key:=#0;end;end.6.148页12题整除的数implementation{$R *.dfm}function d7(x:integer):boolean;beginif x mod 7=0 then d7:=trueelse d7:=false;end;function d17(x:integer):boolean;beginif x mod 17=0 then d17:=trueelse d17:=false;end;procedureTForm1.FormActivate(Sender:TObject);varn:integer;beginfor n:=1000 to 4000 doif d7(n)and d17(n) thenmemo1.Lines.Add(inttostr(n));end;end.7.148页17题求斐波那契数列问题implementation{$R *.dfm}function fib(n:integer):int64; begincase n of1,2:fib:=1;elsefib:=fib(n-1)+fib(n-2);end;end;procedureTForm1.Button1Click(Sender: TObject);vark:integer;beginmemo1.lines.clear;for k:=1 to strtoint(edit1.text) do memo1.lines.add(format('%2d % 3d',[k,fib(k)]));end;end.8.120页10题,判断是否是闰年procedureTForm1.Button1Click(Sender: TObject);vary,m:integer;beginy:=strtoint(edit1.text);m:=strtoint(edit2.text);label3.Caption:='';if((y mod 4 = 0) and (y mod 100 <> 0)) or (y mod 400=0) then label3.Caption:=edit1.text+'年是闰年,'elselabel3.Caption:=edit1.text+'年不是闰年,';case m of3,4,5:Label3.Caption:=Label3.Capt ion+edit2.Text+'月份是春天,';6,7,8:Label3.Caption:=Label3.Capt ion+edit2.Text+'月份是夏天,';9,10,11:Label3.Caption:=Label3.C aption+edit2.Text+'月份是秋天,'; elseLabel3.Caption:=Label3.Caption+e dit2.Text+'月份是冬天,';end;case m of1,3,5,7,8,10,12:Label3.Caption:=Label3.Caption+'共有31天,';4,6,9,11:Label3.Caption:=Label3.Caption+'共有30天,';elseif((y mod 4 = 0) and (y mod 100<> 0) or (y mod 400=0)) thenLabel3.Caption:=Label3.Caption+'共有29天,'elseLabel3.Caption:=Label3.Caption+'共有28天,';end;end;end.9.120页11题求和的procedureTForm1.Button1Click(Sender:TObject);varn,k,j:integer;s:int64;beginn:=strtoint(edit1.text);j:=0;s:=0;for k:=1 to n dobeginj:=j+k;s:=s+j;end;panel2.Caption:=format('s= %d',[s]);edit1.setfocus;end;procedureTForm1.Edit1KeyPress(Sender:TObject; var Key: Char);var b:boolean;beginb:=(key<>#8)and(key<#48)or(key>#57);if b then key:=#0;end;end.10.120页12题男人,女人,小孩各有多少人procedureTForm1.Button1Click(Sender:TObject);varx,y,z:integer;p:string;beginmemo1.clear;for x:=0 to 16 dofor y:=0 to 24 dobeginz:=30-x-y;if 3*x+2*y+z/1=50 thenbeginp:=format('%3d %3d %3d',[x,y,z]);memo1.lines.add(p);end;end;end;end.11.98页2题求长方体的表面积procedureTForm1.Button1Click(Sender:TObject);vars,l,k,h:double;beginl:=strtofloat(edit1.text);k:=strtofloat(edit2.text);h:=strtofloat(edit3.text);s:=2*l*k+2*k*h+2*l*h;label1.Caption:=floattostr(s);end;end.12.98页5题计算圆的面积和周长procedureTForm1.Edit1KeyPress(Sender:TObject; var Key: Char);varr:real;b:boolean;beginb:=(key<>#8)and(key<>'.')and(key <>#13)and(key<#48)or(key>#57); if b then key:=#0;if key =#13 thenbeginif edit1.text='' then edit1.text:='0'; r:=strtofloat(edit1.text);if radiobutton1.Checked then label1.Caption:=format('圆的面积为:%f',[pi*r*r]);if radiobutton2.Checked then label1.Caption:=format('圆的周长为:%f',[2*pi*r]);if radiobutton3.Checked then label1.Caption:=format('圆的面积为:%f'+chr(13)+ '周长为: %f',[pi*r*r,2*pi*r]);edit1.SelectAll;end;end;procedureTForm1.RadioButton1Click(Sende r: TObject);varsender0:tobject;key:char;beginsender0:=edit1;key:=#13;form1.edit1keypress(sender0,key); end;procedureTForm1.RadioButton2Click(Sende r: TObject);varsender0:tobject;key:char;beginsender0:=edit1;key:=#13;form1.edit1keypress(sender0,key); end;procedureTForm1.RadioButton3Click(Sende r: TObject);varsender0:tobject;key:char; beginsender0:=edit1;key:=#13;form1.edit1keypress(sender0,key);end;end.13.98页6题统计奇数和偶数的个数procedureTForm1.Button1Click(Sender:TObject);vark,j,n:word;begink:=0;n:=combobox1.items.count;for j:=1to n doif strtoint(combobox1.items[j-1])mod 2 = 0 thenk:=k+1;label1.caption:=format('共有:'+#13+'%d个偶数,'+#13+'%d个奇数。

相关文档
最新文档