主题:我是新手,请教个问题!!!
star.h
[专家分:0] 发布于 2007-04-21 19:36:00
var
a:array [1..20] of integer;
i,x,y,z:integer;
begin
x:=0;y:=0;z:=0;
for i:=1 to 20 do
begin
read(a[i]);
case a[i] of
a[i]>0:x:=x+1;
a[i]=0:y:=y+1;
a[i]<0:z:=z+1;
end;
end;
writeln('zheng shu=',x,',ling=',y,',fu shu=',z);
readln
end.
哪错了?
怎么错的?
回复列表 (共15个回复)
沙发
bigchen [专家分:1940] 发布于 2007-04-21 20:35:00
什么题目?
板凳
lgr7000 [专家分:230] 发布于 2007-04-22 01:28:00
case 不能这样用的,用if吧
3 楼
bigchen [专家分:1940] 发布于 2007-04-22 08:42:00
var
a:array[1..20] of integer;
s1,s2,s3,i,j,k,l:integer;
begin
for i:=1 to 20 do
begin
read(k);
if k<0 then s1:=s1+1;
if k=0 then s2:=s2+1;
if k>0 then s3:=s3+1;
end;
writeln('fu shu:',s1);
writeln('0:',s2);
writeln('zheng shu:',s3);
end.
4 楼
star.h [专家分:0] 发布于 2007-04-22 10:10:00
那数组没用上啊!!!
5 楼
star.h [专家分:0] 发布于 2007-04-22 10:37:00
case 与 if 不是可以互换吗?
6 楼
游侠UFO [专家分:1200] 发布于 2007-04-22 10:43:00
case下面的那些分支条件只能是常量表达式,你那些全是布尔表达式怎么能行呢?
7 楼
bigchen [专家分:1940] 发布于 2007-04-22 13:06:00
数组纯粹是受你程序的影响
其实用不到
8 楼
bigchen [专家分:1940] 发布于 2007-04-22 13:10:00
var
a:array[1..100] of integer;
i,s1,s2,s3:integer;
begin
for i:=1 to 20 do
begin
read(a[i]);
if a[i]<0 then s1:=s1+1;
if a[i]=0 then s2:=s2+1;
if a[i]>1 then s3:=s3+1;
end;
writeln('fu shu=',s1);
writeln('ling=',s2);
writeln('zheng shu=',s3);
end.
9 楼
bigchen [专家分:1940] 发布于 2007-04-22 13:11:00
这个程序是用数组来做的
你可以参考一下
其实用不到数组也可以做!!!
10 楼
香脆饼干 [专家分:2040] 发布于 2007-04-30 12:51:00
确实好像数组放在这里没啥用处。建议将a[i]改为intTemp更好理解。
我来回复