帮忙看看这个简单的程序错在哪里
#include<iostream>using namespace std;
void *CR(int *a,int *b)
{
*b=*a;
*(b+1)=*a+*(a+1);
*(b+2)=*(a+1);
for(*b=*a,*(b+1)=*a+*(a+1),*(b+2)=*(a+1);*(a+2)!=2;++a,++b)//这里的++b如果去除了那么程序就能完成,但是无法达成目的;
*(b+3)=*(a+2);
*(b+3)='\0';
}
int main()
{
int m,a[9][258]={{1,1},{1,2,1},{1,3,2,3,1},{1,4,3,2,3,4,1}},i;
for(i=3;i<=7;++i)
CR(&a[i][0],&a[i+1][0]);
while(cin>>m)
{
if(m==1)
cout<<"11"<<endl;
else if(m==2)
cout<<"121"<<endl;
else
{
for(i=0;a[m-1][i]!=0;++i)
cout<<" "<<a[m-1][i];
for(i=i-2;a[m-1][i]!=1;--i)
cout<<" "<<a[m-1][i];
cout<<" "<<"1"<<endl;
}
}
system("pause");
return 0;
}
我的环境是DEV-C++4.9.9.2,此程序运行老是直接报错退出····高手指教一下,小弟不胜感激