求C语言高手啊,怎样求2x+y的最大值且xy满足x+y<=20,3x-y<=0,输出取得最大值的x和y的值

2025-05-16 01:47:17
推荐回答(3个)
回答1:

#include
int main()
{
int x,y;
for(x=20;x>=0;x--)
{
for(y=0;y<=20;y++)
{
if(x+y<=20&&3*x-y==0)
{
printf("%d %d",x,y);
break;
}
}

}
return 0;
}

回答2:

#include
void main()
{
int x,y,a,b;
int j=0;
int sum;
for(x=20;x>=0;x--)
for(y=0;y<=20;y++)
if((x+y<=20)&&(3*x-y<=0))
{
sum=2*x+y;
if(sum>j)
{
j=sum;
a=x;
b=y;
}
break;
}
printf("%d %d",a,b);
}

回答3:

#include 

//x,y是整数

int main()

{

int x=0,y=0;

int sum =0,tmp;

for (x=0;x<=5;x++)

{

for (y=0;y<=20;y++)

{

if((x+y<=20)&&(3*x-y<=0))

{

tmp = 2*x+y;

if(tmp>sum)

{

sum = tmp;

printf("x=%d,y=%d,sum=%d\n",x,y,sum);

}

}

}

}

return 0;

}