C语言 求矩阵对角线元素的和
下面是我做的程序:#include<stdio.h>voidmain(){while(1){inta[2][2];intb=0,i,j;for(j=0;j<3;j++)f...
下面是我做的程序:
#include <stdio.h>
void main()
{
while(1)
{
int a[2][2];
int b=0,i,j;
for(j=0;j<3;j++)
for(i=0;i<3;i++)
scanf("%d",&a[j][i]);
for(j=0;j<3;j++)
for(i=0;i<3;i++)
if(i==j||(i+j)==2)
b=a[j][i]+b;
printf("这个矩阵的对角线之和为%d\n",b);
}
}
运行后,输入9个数字得到的答案总比实际结果大1,郁闷啊!
哪位高手帮忙看看,问题出在哪呢? 展开
#include <stdio.h>
void main()
{
while(1)
{
int a[2][2];
int b=0,i,j;
for(j=0;j<3;j++)
for(i=0;i<3;i++)
scanf("%d",&a[j][i]);
for(j=0;j<3;j++)
for(i=0;i<3;i++)
if(i==j||(i+j)==2)
b=a[j][i]+b;
printf("这个矩阵的对角线之和为%d\n",b);
}
}
运行后,输入9个数字得到的答案总比实际结果大1,郁闷啊!
哪位高手帮忙看看,问题出在哪呢? 展开
6个回答
展开全部
1、首先我们打开Dev-c++软件,点击“新建源代码”。
2、然后我们输入如图所示代码。
3、此次我们的程序最终目的是求出3x3的整型矩阵对角线元素之和,所以我们首先要向计算机输入我们3x3矩阵中的所有元素。
4、其次,我们要对输入的矩阵的元素进行放置于相应的位置,以便于我们之后的计算其对角元素之和。
5、再次,我们需要向计算机指出要计算机计算出哪些元素之和和需要计算元素的具体位置在哪儿。
6、这里需要说明一下,我们需要定义三个累积和sum1,sum2,sum来进行计算后的结果的暂时存储。
7、其中:if(m%3==0)表示要求最后输出的结果呈输出3个数之后进行换行。
8、当我们的程序写完之后,点击运行即可求出我们所要求出的结果了。
展开全部
void main()
{
while(1)
{
int a[3][3]; //int a[2][2];
int b=0,i,j;
for(j=0;j<3;j++)
for(i=0;i<3;i++)
scanf("%d",&a[j][i]);
for(j=0;j<3;j++)
for(i=0;i<3;i++)
if(i==j||(i+j)==2)
b=a[j][i]+b;
printf("这个矩阵的对角线之和为%d\n",b);
}
}
{
while(1)
{
int a[3][3]; //int a[2][2];
int b=0,i,j;
for(j=0;j<3;j++)
for(i=0;i<3;i++)
scanf("%d",&a[j][i]);
for(j=0;j<3;j++)
for(i=0;i<3;i++)
if(i==j||(i+j)==2)
b=a[j][i]+b;
printf("这个矩阵的对角线之和为%d\n",b);
}
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
对角线的条件只需要“i==j”即可,不要“i+j==2”。
if(i==j||(i+j)==2)
改为
if(i==j)
if(i==j||(i+j)==2)
改为
if(i==j)
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
123456789101112131415161718192021222324252627#include<stdio.h>int a[10][10]={0};int i,j,n,sum;void shuru(); int main(){ while (1) { printf("请输入矩阵的阶数:(输入0结束程序)\n"); scanf("%d",&n); if (n==0) break; shuru(); sum=0; for (i=0;i<n;i++) sum=sum+a[i][i]; printf("矩阵的对角线元素和为:%d\n",sum); } return 0;}void shuru(){ for (i=0;i<n;i++) for (j=0;j<n;j++) scanf("%3d",&a[i][j]);}
void
shuru()函数的声明要放在前面
void
shuru()函数的声明要放在前面
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
int a[4][4];问题就在这里,原文写的是2*2,可是程序后面的部分要求矩阵是4*4的!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询