程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C >> C語言問答 >> c語言程序,哪兒錯了?

c語言程序,哪兒錯了?

編輯:C語言問答

c語言程序,哪兒錯了?

題目有點長,請各位耐心閱讀。

題目:現在你有a,b,c三種原件若干個,你需要a原件500個,b原件400個,c原件300個去建造一個機器。有四個商人,從四個商人那兒用1塊錢分別能買到以下數目的原件:甲a原件2個,b原件4個,c原件2個,乙a原件2個,b原件1個,c原件3個,丙a原件5個,b原件2個,c原件2個,丁a原件4個,b原件3個,c原件2個。要求通過輸入你的元件數,求出最省錢的方法。

 

我編的程序:

#include<stdio.h>
int main()
{
 int x,y,z,w,a,b,c,i,j,k,l,sum2,sum=250;
 printf("請輸入所擁有原件個數:例如10,30,50:\n");
 scanf("%d,%d,%d",&a,&b,&c);
 for(i=0;i<100;i++)
 {
  for(j=0;j<100;j++)
  {
   for(k=0;k<100;k++)
   {
    for(l=0;l<100;l++)
    {
     if((2*i+2*j+5*k+4*l)>=(500-a)&&(4*i+j+2*k+3*l)>=(400-b)&&(2*i+3*j+2*k+2*l)>=(300-c))
     {
      sum2=i+j+k+l;
      if(sum2<sum)
      {
       x=i;
       y=j;
       z=k;
       w=l;
       sum=sum2;
      }
     }
    }
   }
  }
 }
 printf("甲處購買%d次,乙處購買%d次,丙處購買%d次,丁處購買%d次。\n",x,y,z,w);
 printf("最後買到a%d個,b%d個,c%d個\n",2*i+2*j+5*k+4*l,4*i+j+2*k+3*l,2*i+3*j+2*k+2*l);

最佳回答:


很高興能看到你的問題,並且希望可以幫助你。發現問題:printf("最後買到a%d個,b%d個,c%d個\n",2*i+2*j+5*k+4*l,4*i+j+2*k+3*l,2*i+3*j+2*k+2*l);
這裡計算買到零件有誤,i,j,k,l是退出循環時的值,是100,應該用x,y,z,w來進行計算
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved