другая проблема:
присваивает значению s левые числа, а не s=s+a[m][p] как надо
и в конце не выводит одномерный массив b[2*n-1]
2*n-1 - это количество нужных диагоналей
PHP код:
#include <conio.h>
#include <math.h>
#include <stdio.h>
void main()
{
int i,j,n,m,p,k,s;
int a[255][255];
printf("vvedite razmer massiva ");
scanf_s("%d",&n);
for(i=0; i<n; i++)
{
for(j=0; j<n; j++)
{
printf("a[i,j] ");
scanf_s("%d",&a[i][j]);
}
}
for(i=0; i<n; i++)
{
for(j=0; j<n; j++)
{
printf("%d ", a[i][j]);
}
if (j=n)
{
printf("\n");
}
}
printf("\n");
int * b = new int[(2*n)-1];
s=0;
p=0;
m=0;
k=1;
i=n;
j=1;
while (i>=1)
{
m=i;
p=j;
while (m<=n || p<=n)
{
s=s+a[m][p];
printf("%d\n ", s);
m++;
p++;
}
b[k]=s;
printf("%d\n ", b[k]);
s=0;
k++;
i--;
}
s=0;
i=1;
j=2;
printf("Vtoroy czickl\n ");
while (j<=n)
{
m=i;
p=j;
while (m<=n || p<=n)
{
s=s+a[m][p];
printf("%d\n ", s);
m++;
p++;
}
b[k]=s;
printf("%d\n ", b[k]);
s=0;
k++;
j++;
}
for (k = 1; k<2*n-1; k++);
{
printf("b[k]=");
printf("%d\n", b[k]);
}
getch();
}
Вот что выводит(рис). А должно быть : b[k]=3, b[k]=5, b[k]=2