susate eccolo l'avevo fatto.

int palind(int a[],int dima,int dimb,int b[]);

int main(int argc, char *argv[])
{
const int dima=4;
int a[dima]={1,2,3,4};

const int dimb=7;
int b[dimb];

palind(a,dima,dimb, b) ;

system("PAUSE");
return EXIT_SUCCESS;
}

int palind(int a[],int dima,int dimb,int b[]){
int metab;
for(int i=0;i<1;i++)
metab=dimb/2;

if(dimb==metab) return dima=0;

if(dimb>metab)
return (a,dima--,dimb--,a[dima]);

if(dimb<metab)
return (a,dima++,dimb--,a[dima]);

}

quanto c'è di sbagliato e quanto c'è di giusto??