已知一个数组四行,四列的整型数组,设计一段c程序,分别计算并输出两条对角线各

 我来答
gongxinheng
2015-12-05 · 知道合伙人软件行家
gongxinheng
知道合伙人软件行家
采纳数:55 获赞数:380
6年游戏开发经验。曾在多个MMO PC游戏以及手游项目担任主程。 目前在美国华盛顿州立大学留学并参与研究项目

向TA提问 私信TA
展开全部

题目不完整,这里提供访问对角线所有元素的方式。因为这里四行四列是方阵,所以正对角线元素的行列坐标都相同。比如:<x=1, y=1>, <x=2, y=2>。反对角线元素从第一个元素<x=0,y=3>开始,下一个元素是上一个的<x+1, y-1>


所以直接一重循环用同样的x和y坐标可以取到所有的元素

// 假设有四行四列数组int a[4][4];分别算两条对角线的和
int i;
int sum = 0;
// 正对角线
for(i = 0; i < 4; i++)
{
    sum += a[i][i];
}

// 反对角线
sum = 0;
for(i = 0; i < 4; i++)
{
    // 依次是<0, 3>, <1, 2>, <2, 1>, <3, 0>
    sum += a[0 + i][3 - i];
}
千锋教育
2015-12-05 · 做真实的自己 用良心做教育
千锋教育
千锋教育专注HTML5大前端、JavaEE、Python、人工智能、UI&UE、云计算、全栈软件测试、大数据、物联网+嵌入式、Unity游戏开发、网络安全、互联网营销、Go语言等培训教育。
向TA提问
展开全部
#include<stdio.h>

int main()
{
int a[4][4]={1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4};
//1 2 3 4
//1 2 3 4
//1 2 3 4
//1 2 3 4
int i,j;
for(i=0;i<4;i++){
j=i;
printf("%d\t",a[i][j]);
}
puts("");
for(i=0;i<4;i++){
j=3-i;
printf("%d\t",a[i][j]);
}
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式