为了账号安全,请及时绑定邮箱和手机立即绑定

c语言 程序题 数组题

c语言 程序题 数组题

C
何家姑娘 2016-11-17 21:38:50
初始化矩阵a【4】【4】,分别计算两天对角线元素之和。要求输出原始矩阵及两条对角线的元素和。
查看完整描述

3 回答

已采纳
?
望远

TA贡献1017条经验 获得超1032个赞

#include<stdio.h>
void main()
{
	int arr[100][100];
	int n,i,j;
	int sum1=0,sum2=0;
	printf("请输入一个正整数:");
	scanf("%d",&n);
	printf("请输入一个%d*%d的矩阵:\n",n,n);
	for(i=0;i<n;i++)
	{
		for(j=0;j<n;j++)
		{
			scanf("%d",&arr[i][j]);
		}
	}
	printf("原矩阵为:\n");
	for(i=0;i<n;i++)
	{
		for(j=0;j<n;j++)
		{
			printf("%5d",arr[i][j]);
			if(i==j)
			{
				sum1+=arr[i][j];//主对角线
			}
			if(i+j==n-1)
			{
				sum2+=arr[i][j];//副对角线
			}
		}
		printf("\n");
	}
	printf("主对角线之和:%d副对角线之和%d\n",sum1,sum2);

}

//img1.sycdn.imooc.com//582e298d0001427502950200.jpg

查看完整回答
1 反对 回复 2016-11-18
?
慕瓜4807886

TA贡献25条经验 获得超9个赞

对角线的元素的下标都是有规律的啊,00,11,22,33,04,13,22,40,如果你不想这样,对角线对于第一行来说就是第一个和最后一个元素,第二行就是第二个和倒数第二个,以此类推,然后你得到在相加就好了

查看完整回答
反对 回复 2016-11-17
  • 3 回答
  • 1 关注
  • 1191 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信