c语言 大神看看我的代码哪里错了
#include<stdio.h>intmain(){intn,i,a[100],j,t;doublem,b[100],c[100],x;while(scanf("%d%...
#include<stdio.h>
int main()
{
int n,i,a[100],j,t;
double m,b[100],c[100],x;
while(scanf("%d %lf",&n,&m)!=EOF)
{
for(i=0;i<n;i++)
{
scanf("%lf %lf",&b[i],&c[i]);
a[i]=i;
}
for(i=0;i<n;i++)
{
for(j=0;j<n-i-1;j++)
{
if(c[j]>c[j+1])
{
x=c[j];
c[j]=c[j+1];
c[j+1]=x;
t=a[j];
a[j]=a[j+1];
a[j+1]=t;
}
}
}
x=0;
for(i=n-1;i>=0;i--)
{
j=a[i];
if(m>=b[j])
{
x=x+c[i];
m=m-b[j];
}
}
printf("%.1lf\n",x);
}
return 0;
} 展开
int main()
{
int n,i,a[100],j,t;
double m,b[100],c[100],x;
while(scanf("%d %lf",&n,&m)!=EOF)
{
for(i=0;i<n;i++)
{
scanf("%lf %lf",&b[i],&c[i]);
a[i]=i;
}
for(i=0;i<n;i++)
{
for(j=0;j<n-i-1;j++)
{
if(c[j]>c[j+1])
{
x=c[j];
c[j]=c[j+1];
c[j+1]=x;
t=a[j];
a[j]=a[j+1];
a[j+1]=t;
}
}
}
x=0;
for(i=n-1;i>=0;i--)
{
j=a[i];
if(m>=b[j])
{
x=x+c[i];
m=m-b[j];
}
}
printf("%.1lf\n",x);
}
return 0;
} 展开
2个回答
2015-02-16
展开全部
什么错误?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询