这题怎么错了?????????pascal程序。。。高手说一下原因。。我是菜鸟啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊!!

 我来答
jaxxcyhc3bea9
2013-05-17 · TA获得超过8857个赞
知道大有可为答主
回答量:4564
采纳率:75%
帮助的人:1256万
展开全部

你的错误有好几处:

1、变量声明写错了;

按你的意思,应该输入两个变量,一个是年份(看样子你是想直接将年份设为10000?),一个是月份,那么变量声明可以写成:

var a:1..12;

      c:integer;

 

2、程序部分语句错误;

如果年份、月份需要输入可写成:

read(a,c);

 

如果只输入月份,年份设为10000,可写成:

read(a);

c:=10000;

 

注意,赋值符号是“:=”,而不是“:”。

 

此外,在判断季节的语句中,应该是用or(或)不能用and(和)

if month=3 or month=4 or month=5 then write('spring');

同样,在判断天数语句中,也是应该用or,不能用and.

 

但是,用case情况语句,就更简洁了。

下面是我给你重编的程序。

---------------------------------

 

 

program date;
  var  year: integer;
   month: 1..12;
       days: integer;
     season: string;
begin
 read(year,month);  //输入年,月

 case month of      //判断天数
  1,3,5,7,8,10,12: days:=31;
         4,6,9,11: days:=30;
                2: if (year mod 4=0) and (year mod 100<>0) or (year mod 400=0)
                 then days:=29
                else days:=28;
 end;

 case month of      //判断季节
    3,4,5: season:='spring';
      6,7,8: season:='summer';
    9,10,11: season:='autumn';
     12,1,2: season:='winter';
 end;

 writeln(season,' ',days);
end.

txfic
2013-05-15 · TA获得超过110个赞
知道答主
回答量:183
采纳率:0%
帮助的人:113万
展开全部
在我印象中pascal的变量定义不是这样的吧。
var 变量名:类型;应该是这样的吧。从报错看是第4行和第3行之间少了;
有差不多10年没看过Pascal了。不知道记得对不对
更多追问追答
追问
那怎么写呀呀呀呀呀呀呀呀呀呀呀呀呀呀呀呀呀呀呀呀呀呀呀呀呀呀呀呀呀呀呀呀呀呀!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
追答
var a,b,c:integer;
begin
c:=10000;

a是你自己输入的,b是算出来的。不用初始化赋值
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
魔塔玩者
2013-05-15 · TA获得超过9789个赞
知道小有建树答主
回答量:2221
采纳率:51%
帮助的人:806万
展开全部
下面的人错了,你第四排没有分号当然不行。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
freeteri
2013-05-15
知道答主
回答量:30
采纳率:0%
帮助的人:9.3万
展开全部
'a,b:1..12'那儿少了一个分号
追问
我试了也不行!!!!!!!!?????
追答
c的赋值应该用":="
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式