1.求5行5列二维数组主对角线(从左上角到右下角)上元素之和。
//求5行5列二维数组主对角线(从左上角到右下角)上元素之和。
#include<stdio.h>
#define ROW 5
#define CLOUE 5
int print_arr(int (*parr)[CLOUE],int row,int cloue)
{
int i,j;
printf("主线数组打印出来为:\n");
for(i=0;i<row;i++)
{
for(j=0;j<cloue;j++)
{
printf(" %d ",parr[i][j]);
}
printf("\n");
}
return 0;
}
//求对角线的和
int add_arr(int (*parr)[CLOUE],int row,int cloue)
{
int i,j;
int sum = 0;
for(i=0;i<row;i++)
{
for(j=0;j<cloue;j++)
{
if(i == j)
{
sum = sum+parr[i][j];
}
}
}
printf("%d\n",sum);
return 0;
}
int main()
{
int arr[5][5] = {
{1,2,3,4,5},
{6,7,8,9,7},
{4,5,6,7,8},
{9,8,7,6,5},
{6,7,8,9,8}};
int *parr;
parr = arr;
print_arr(parr,5,5);
printf("\n");
printf("数组主对角线之和为:");
add_arr(arr,5,5);
return 0;
}