#include<iostream>
using namespace std;
int main()
{
int arr[5][5]{
{1,2,3,4,5},
{2,3,4,5,6},
{3,4,5,6,7},
{4,5,6,7,8},
{5,6,7,8,9} };
int(*p)[5] = arr;
//上三角元素和
int sum1 = 0;
for (int i = 0; i < 5; i++) {
int sum = 0;
for (int j = 4; j >= i;j--) {
sum += *(p[i] + j);
}
sum1 += sum;
}
cout<<"上三角元素和为:"<< sum1 << endl;
//下三角元素和
int sum2 = 0;
for (int i = 0; i < 5; i++) {
int sum = 0;
for (int j = 0; j <= i; j++) {
sum += *(p[i] + j);
}
sum2 += sum;
}
cout << "下三角元素和为:" << sum2 << endl;
//主对角线上所有元素的和
int sum3 = 0;
for (int i = 0; i < 5; i++) {
sum3 += *(p[i] + i);
}
cout << "主对角线上所有元素的和为:" << sum3 << endl;
system("pause");
return 0;
}
(第三次上机)已知一个方阵,存储在一个二维数组中。用指针访问数组元素的方法,计算方阵中上三角所有元素的和,下三角所有元素的和,以及主对角线上所有元素的和。
最新推荐文章于 2023-11-18 21:03:25 发布