| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 500 人关注过本帖
标题:请给看一下哪里有问题!
只看楼主 加入收藏
erlin
Rank: 1
等 级:新手上路
帖 子:29
专家分:0
注 册:2007-3-19
收藏
 问题点数:0 回复次数:4 
请给看一下哪里有问题!

跟书上学的做的一个"个人所得税"的小东西
unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;

type
TForm1 = class(TForm)
Label1: TLabel;
Label2: TLabel;
Edit1: TEdit;
Edit2: TEdit;
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var
sum,para,tax:single;
begin
sum:=strtofloat(edit1.Text);
sum:=sum-800;
tax:=0;
if sum>2000
then begin
para:=sum-2000;
sum:=sum-para;
tax:=tax+para*0.15;
end;
if sum>500
then begin
para:=sum-500;
sum:=sum-para;
tax:=tax+para*0.1;
end;
if sum>0
then tax:=tax+sum*0.05;
edit2.text:=floattostr(tax);
end;

那个代码检测没有出现红色行的错误提示,但是点运行不出现完成的那个东西,下面错误提示是
[Error] Unit1.pas(123): Declaration expected but end of file found
[Fatal Error] Project1.dpr(5): Could not compile used unit '作业6\Unit1.pas'

2007-03-24 23:30
sgliuxiu
Rank: 5Rank: 5
等 级:贵宾
威 望:15
帖 子:291
专家分:0
注 册:2007-2-2
收藏
得分:0 

最后的end. 呢?


小猫说:给我10元钱
2007-03-25 00:23
pacocai
Rank: 3Rank: 3
等 级:新手上路
威 望:6
帖 子:1583
专家分:0
注 册:2007-3-12
收藏
得分:0 

Declaration expected but end of file found 少写或者匹配不对所致,查看你程序中所有的BEGIN..与END是否都匹配了,然后再查是否那些地方少加了;号或是多加了;号。

好了,楼主的程序我已经跑过了,只要在尾部增加一个end.就可以通过了,顺带,最好把最后一个if的中间程序加上begin..end;这样程序会清晰很多。

unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;

type
TForm1 = class(TForm)
Edit1: TEdit;
Edit2: TEdit;
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var
sum,para,tax:single;
begin
sum:=strtofloat(edit1.Text);
sum:=sum-800;
tax:=0;
if sum>2000 then
begin
para:=sum-2000;
sum:=sum-para;
tax:=tax+para*0.15;
end;
if sum>500 then
begin
para:=sum-500;
sum:=sum-para;
tax:=tax+para*0.1;
end;
if sum>0 then
begin
tax:=tax+sum*0.05;
edit2.text:=floattostr(tax);
end;
end;

end.

以上代码是完整的代码,已经通过DELPHI 7测试的。


浮生若梦天边月,醉死如酒水中星。红楼一梦千人叹,岂让万夫空做贱。博客:http://hi.baidu.com/rxvip
2007-03-25 09:29
erlin
Rank: 1
等 级:新手上路
帖 子:29
专家分:0
注 册:2007-3-19
收藏
得分:0 

这次代码是没问题了,但是怎么打不开呀?
点那个绿色的三角测试就闪一下就没了,好象是一打开就自动给关了.双击那个以完成的EXE的也是打不开.


人生上半场20年,拒人3次,被拒2次,目前3:2领先……
2007-03-25 19:11
pacocai
Rank: 3Rank: 3
等 级:新手上路
威 望:6
帖 子:1583
专家分:0
注 册:2007-3-12
收藏
得分:0 
窗口创建了没有???标签和文本框这些都有创建吧???要不你重新弄一下你的DELPHI吧。

浮生若梦天边月,醉死如酒水中星。红楼一梦千人叹,岂让万夫空做贱。博客:http://hi.baidu.com/rxvip
2007-03-25 23:36
快速回复:请给看一下哪里有问题!
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.032530 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved