⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 分酒比赛.c

📁 C语言小程序。有白鸡问题
💻 C
字号:
int m[3],a[20][3],b[3],c[20][20][3],d[20][7],p[7];
main( )
{
    int i,j,k,q,n,nm,s;
    printf("请输入三个容器的容量:");
    scanf("%d,%d,%d",&m[0],&m[1],&m[2]);
    printf("\nFIRST=%d   SECOND=%d   THIRD=%d\n",m[0],m[1],m[2]);
    n=0;
    nm=0;
    b[0]=m[0];
   sub1( );
   for(i=0;i<3;i++)
     a[n][i]=b[i];
   for(i=0;i<7;i++)
     d[n][i]=p[i];
s170: sub2( );
   for(i=0;i<7;i++)
     d[n][i]=p[i];
   if((b[0]==b[1])&&(b[0]==(m[0]/2)))
         goto s405;
s185:  n=n+1;
   sub1( );
   for(i=0;i<3;i++)
     a[n][i]=b[i];
   for(i=0;i<7;i++)
     d[n][i]=p[i];
   sub2( );
   for(i=0;i<7;i++)
     d[n][i]=p[i];
  if((b[0]==b[1])&&(b[0]==(m[0]/2)))
         goto s405;
   for(i=0;i<n;i++)
  if((b[0]==a[i][0])&&(b[1]==a[i][1])&&(b[2]==a[i][2]))
         goto s285;
   if(n<20)
        goto s185;
s285:   for(i=0;i<3;i++)
      b[i]=a[n][i];
   if(p[6]!=0)
      goto s170;
s305:   for(i=0;i<n-1;i++)
     { if(d[n-i][6]==0)
          goto s325;
        n=n-i;
        goto s340;
s325:;     }
   goto s455;
 s340:  for(i=0;i<3;i++)
       b[i]=a[n][i];
   for(i=0;i<7;i++)
       p[i]=d[n][i];
   for(i=n+1;i<20;i++)
      for(j=0;j<7;j++)
          d[i][j]=0;
   goto s170;
s405:   n=n+1;
   for(i=0;i<3;i++)
     a[n][i]=b[i];
   nm=nm+1;
   for(i=0;i<n;i++)
      for(j=0;j<3;j++)
       c[nm][i][j]=a[i][j];
   if(nm==16)
      goto s455;
   goto s305;
s455: printf("TOTAL METHODS=%d \n",nm);getch();
   q=0;
s460:   q=q+1;
   for(i=0;i<4;i++)
      printf("    METHOD%d ",i+(q-1)*4+1);
      getch();
   printf("\n");
   for(j=0;j<20;j++)
      { s=0;
	 for(n=(q-1)*4;n<q*4;n++)
           { s=s+1;
	      printf("   %d",c[n][j][0]);
              for(k=1;k<3;k++)
		printf("   %d",c[n][j][k]);
            }
	 printf("\n");
      }
   printf("\n");
   if(q<(nm/4))
       goto s460;
}
int sub1( )
{ int j, f;
   for(j=0;j<7;j++)
     p[j]=0;
   f=0;
   if(b[0]==0)
         goto s670;
   if(b[1]==m[1])
         goto s650;
   p[0]=1;
   f=f+1;
s650:   if(b[2]==m[2])
         goto s670;
   p[1]=1;
   f=f+1;
s670:   if(b[1]==0)
         goto s715;
   if(b[0]==m[0])
         goto s695;
   p[2]=1;
   f=f+1;
s695:   if(b[2]==m[2])
         goto s715;
   p[3]=1;
   f=f+1;
s715:   if(b[2]==0)
        goto s760;
   if(b[0]==m[0])
        goto s740;
   p[4]=1;
   f=f+1;
 s740:  if(b[1]==m[1])
         goto s760;
   p[5]=1;
   f=f+1;
 s760:  p[6]=f;
}
int sub2( )
{ if(p[0]==0)
      goto s855;
   if(b[0]>=m[1]-b[1])
      goto s835;
   b[1]=b[1]+b[0];
   b[0]=0;
   goto s845;
s835:   b[0]=b[0]-(m[1]-b[1]);
   b[1]=m[1];
 s845:  p[0]=0;
   goto s1095;
 s855:  if(p[1]==0)
      goto s905;
   if(b[0]>=(m[2]-b[2]))
      goto s885;
   b[2]=b[2]+b[0];
   b[0]=0;
   goto s895;
s885:   b[0]=b[0]-(m[2]-b[2]);
   b[2]=m[2];
s895:  p[1]=0;
   goto s1095;
s905:  if(p[2]==0)
      goto s955;
  if(b[1]>=(m[0]-b[0]))
      goto s935;
   b[0]=b[0]+b[1];
   b[1]=0;
   goto s945;
s935:   b[1]=b[1]-(m[0]-b[0]);
   b[0]=m[0];
s945:   p[2]=0;
   goto s1095;
s955:   if(p[3]==0)
      goto s1005;
  if(b[1]>=(m[2]-b[2]))
      goto s985;
   b[2]=b[2]+b[1];
   b[1]=0;
   goto s995;
s985:   b[1]=b[1]-(m[2]-b[2]);
   b[2]=m[2];
s995:   p[3]=0;
   goto s1095;
s1005:   if(p[4]==0)
      goto s1060;
 if(b[2]>=(m[0]-b[0]))
      goto s1035;
   b[0]=b[0]+b[2];
   b[2]=0;
   goto s1045;
s1035:   b[2]=b[2]-(m[0]-b[0]);
   b[0]=m[0];
s1045:   p[4]=0;
   goto s1095;
s1060:   if(b[2]>=(m[1]-b[1]))
      goto s1080;
   b[1]=b[1]+b[2];
   b[2]=0;
   goto s1090;
s1080:   b[2]=b[2]-(m[1]-b[1]);
   b[1]=m[1];
s1090:   p[5]=0;
s1095:   p[6]=p[6]-1;
 }

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -