讨论 / 为什么错啊,怎么输出的都是一个答案?各位帮帮忙
李梦雨 2011-08-23 05:09:00
点我顶贴 收藏 删除
var a:array[1..100]of string[20];

q,b,w,s:array[0..100]of integer;

g,x:array[1..100]of char;

n,i,l,r:integer;

sum,max:longint;

m,ch:char;st:string;

procedure init;

begin

readln(n);

for i:=1 to n do

begin

read(m);

while m<>' ' do begin

a[i]:=a[i]+m;

read(m);

end;

readln(q[i],b[i],ch,g[i],ch,x[i],w[i]);

end;

end;

procedure qian;

begin

for i:=1 to n do

begin

if q[i]>80 then

begin

if g[i]='y' then s[i]:=s[i]+850;

if w[i]>=1 then s[i]:=s[i]+8000;

end;

if q[i]>85 then

begin

if b[i]>80 then s[i]:=s[i]+4000;

if x[i]='y' then s[i]:=s[i]+1000;

end;

if q[i]>90 then s[i]:=s[i]+2000;

sum:=sum+s[i];

if s[i]>max then begin

max:=s[i];

st:=a[i];

end;

end;

end;

begin

init;

fillchar(s,sizeof(s),0);

sum:=0;

max:=0;

qian;

writeln(st);

writeln(max);

writeln(sum);

end.

#1 tym983398371@2011-08-18 07:20:00
回复 删除
为啥每次不说题目?

为啥每次不说题目?!!

#2 ??(?那只被盗了)@2011-08-18 16:48:00
回复 删除
我和你有同样的经历,应该是数组定义太小
#3 chen12345@2011-08-23 05:09:00
回复 删除
这个对的

#include<stdio.h>

int main(){

int m;

scanf("%d",&m);

int a[m][100];

int qimo[m];

int banpin[m];

char ganbu[m];

char xibu[m];

int lunwen[m];

int ans[m],s;

s=0;

int i;

for(i=0;i<m;i++)ans[i]=0;

for(i=0;i<m;i++)

scanf("%s %d %d %c %c %d",a[i],&qimo[i],&banpin[i],&ganbu[i],&xibu[i],&lunwen[i]);

for(i=0;i<m;i++){

if(qimo[i]>80&&lunwen[i]>=1)ans[i]+=8000;

if(qimo[i]>85&&banpin[i]>80)ans[i]+=4000;

if(qimo[i]>90)ans[i]+=2000;

if(qimo[i]>85&&xibu[i]=='Y')ans[i]+=1000;

if(banpin[i]>80&&ganbu[i]=='Y')ans[i]+=850;

}

int max,maxn;

max=0;

for(i=0;i<m;i++){

s=s+ans[i];

if(ans[i]>max){max=ans[i];maxn=i;}

}

printf("%s\n%d\n%d",a[maxn],ans[maxn],s);

return 0;

}

查看更多回复
提交回复