永发信息网

用c语言编写程序求矩阵5*5的上三角之和,下三角之和

答案:4  悬赏:40  手机版
解决时间 2021-03-10 23:07
  • 提问者网友:那叫心脏的地方装的都是你
  • 2021-03-10 09:34
用c语言编写程序求矩阵5*5的上三角之和,下三角之和
最佳答案
  • 五星知识达人网友:woshuo
  • 2021-03-10 10:50
一、上三角形和下三角形
上三角形是指矩阵右上角区域,由上边、右边和对角线围成的区域,如图所示,上三角形区域包括橙色区域和白色区域。
下三角形是指矩阵左下角区域,由下边、左边和对角线围成的区域,如图所示,下三角形区域包括蓝色区域和白色区域。

由图可见,对于上三角区域的每一个元素arr[i][j],均有j>=i;对于下三角区域的每一个元素arr[i][j],均有j<=i。


二、参考程序
#include 

#define N 5

void main()
{
int arr[N][N] = {
{0, 1, 1, 1, 1},
{2, 0, 1, 1, 1}, 
{2, 2, 0, 1, 1}, 
{2, 2, 2, 0, 1}, 
{2, 2, 2, 2, 0}};
int i, j;
int sum1 = 0, sum2 = 0;


for(i=0; i {
for(j=i; j {
sum1 += arr[i][j];
}
}


for(i=0; i {
for(j=0; j<=i; j++)
{
sum2 += arr[i][j];
}
}

printf("上三角形元素之和:%d
", sum1);
printf("下三角形元素之和:%d
", sum2);
}

三、运行测试
上三角形元素之和:10
下三角形元素之和:20
全部回答
  • 1楼网友:duile
  • 2021-03-10 14:10
#include
void trangle(int a[][5])
{
int s1=0;
int s2=0;
int i=0;
int j=0;

for(i=0;i<5;i++)
{
for(j=i;j<5;j++)
{
s1+=a[i][j];
}
}
for(i=0;i<5;i++)
{
for(j=0;j<=i;j++)
{
s2+=a[i][j];
}
}
printf("upper=%d\n",s1);
printf("lower=%d\n",s2);
}
int main()
{
int a[5][5]={ 1,2,3,4,5,
1,2,3,4,5,
1,2,3,4,5,
1,2,3,4,5,
1,2,3,4,5,
};
trangle(a);
return 0;
}
  • 2楼网友:一把行者刀
  • 2021-03-10 12:50
上三角
for(i=0,i++,i=4)
for(j=i;j++,j=4)
sum+=a[i][j];

下三角
for(j=0,j++,j=4)
for(i=0;i++,i=j)
sum+=a[i][j];
  • 3楼网友:慢性怪人
  • 2021-03-10 12:08
#include
void main()
{
int count1=0,count2=0;
int a[5][5];
int i,j;
printf("请输入5*5的矩阵");
for(i=0;i<5;i++)
for(j=0;j<5;j++)
{
scanf("%d",a[i][j]);
if(i>=j)
count1+=a[i][j];
if(i<=j)
count2+=a[i][j];
}
printf("上三角的和:%d,下三角的和:%d",count2,count1);
}
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯