第1个回答 2011-01-24
不支持动态的啊,下面的代码可能对你有帮助:
int m,n;//n行,m列,每一行的列数可能不同。
int **a;
int *p,**pp;
int *flag;
cin>>n;//用户输入n的值
a=(int **)calloc(n,sizeof(int*));//开辟n个存储指针的内存,a为指针的指针
flag=(int*)calloc(n,sizeof(int));
memset(flag,0,n);
for(pp=a;pp<a+n;pp++)//遍历每一行
{
cin>>m;//用户输入m,不同行,m的值可能不同
*pp=(int*)calloc(m,sizeof(int));//开辟m个存放整型数据的内存空间
memset(*pp,0,m);
for(p=*pp;p<*pp+m;p++)//对这些整型数据遍历访问
{
cin>>*p;
}
sort(*pp,m);//对数据排序
for(p=*pp+1;p<*pp+m-1;p++)
{
if(*p+*p!=*(p-1)+*(p+1))
{
flag[pp-a]=1;
p=*pp+m-1;//退出此次循环
}
}
free(*pp);
}
free(flag);
free(a);