С первым вопросом вроде бы разобрался.
Код:
#include <stdio.h>
#define X 3
void main()
{
int matrix[X][X] = {
{4,-3,-3},
{4,-1,0},
{5,1,5}};
int size=X-1;
int** data; /*как описать этот указатель правильно*/
int d=0;
int i=0;
int k,l,datai,dataj;
data = new int*[size];
for(k=0;k<size;k++)
{
data[k]=new int[size];
}
datai=0;
dataj=0;
for (k=0 ; k<X; k++) //проход про строкам
{
if (k != d){
for (l=0; l<X;l++) //проход по столбцам строки
{
if (l!=i){
*((*(data+datai))+dataj)=matrix[k][l];
dataj++;
//printf ("matrix[%d][%d]=%d\n", k,l,matrix[k][l]);
}
}
datai++;
dataj=0;
}
}
for (k=0;k<size;k++)
{
for(l=0;l<size;l++)
{
printf("%d ",data[k][l]);
}
printf("\n");
}
for(k=0;k<size;k++)
{
delete[] data[k];
}
delete[] data;
}