#include <iostream>
using namespace std;
int main(void)
{
int N=100;
int (*a)[4]=new int [N][4];
int *b=new int [N];
for(int i=0;i<N;i++)
{
for(int j=0;j<4;j++)
cin>>a[i][j];
if(a[i][0]==a[i][1]&&a[i][1]==a[i][2]&&a[i][2]==a[i][3]&&a[i][3]==-1)
break;
}
for(int k=0;k<i;k++)
{
int a1,b1,c1,a2,b2;
a1=a[k][0]%23;
b1=a[k][1]%28;
c1=a[k][2]%33;
if(b1-a1<0)
a2=b1-a1+28;
else
a2=b1-a1;
if(c1-a1<0)
b2=c1-a1+33;
else
b2=c1-a1;
int T=1,n1=1;
while(T)
{
if((23*n1)%28==a2&&(23*n1)%33==b2)
{
b[k]=n1;
T=0;
}
else
n1++;
}
}
for(int m=0;m<i;m++)
cout<<"Case "<<m+1<<": "<<"the next triple peak occurs in "<<23*b[m]-a[m][3]+a[m][0]%23<<" days."<<endl;
return 0;
}
为什么我的北大ACM1006题提交上去会是编译错误呢,以下是我的代码:#...
又用到了 i 。。。所以编译错误 你把i 提出来。。,在外面声明 ,就不会Compile Error了