零K沁雪


私信TA

用户名:qczl

访问量:74853

签 名:

零K沁雪

等  级
排  名 40
经  验 12041
参赛次数 3
文章发表 35
年  龄 0
在职情况 在职
学  校
专  业

  自我简介:

解题思路:

1、矩阵选择使用二维数组 a[x][y] 来存储。

2、使用二维数据存储数据时,需要2个for循环来获取数据

3、主对角线的数据特征是 x=y, 副对角线的数据特征是x+y=2

注意事项:

参考代码:

#include<stdio.h>
int main()
{
    int x, y, sum1 = 0, sum2 = 0, a[3][3];
    for(x=0; x<3; x++)
    {
        for(y=0; y<3; y++) 
        {
            scanf("%d", &a[x][y]);
            if(x == y)
                sum1+=a[x][y];
            if(x+y == 2)
                sum2+=a[x][y];
        }
    }
    printf("%d %d", sum1, sum2);
    return 0;
}


 

0.0分

147 人评分

看不懂代码?想转换其他语言的代码? 或者想问其他问题? 试试问问AI编程助手,随时响应你的问题:

编程语言转换万能编程问答  

代码解释器

代码纠错

SQL生成与解释

  评论区

#include <stdio.h>

int main()
  {
  	int num[3][3];
  	int i,j,a,b;
  	for(i=0;i<3;i++)
  	  for(j=0;j<3;j++)
  	    scanf("%d",&num[i][j]);
  	a=num[0][0]+num[1][1]+num[2][2];
  	b=num[0][2]+num[1][1]+num[2][0];
  	printf("%d %d",a,b);
  	
  	return 0;
  }
2020-11-18 15:10:37
#include<stdio.h>
int main()
{
	int i,j,n,sum1=0,sum2=0;
	int a[10][10];
	scanf("%d",&n);
	for(i=0;i<n;i++)
		for(j=0;j<n;j++)
		{	
			scanf("%d",&a[i][j]);
			if(i==j)
				sum1+=a[i][j];
			else if(i+j==n-1)
				sum2+=a[i][j];
		}
		printf("%d %d",sum1,sum2);
		return 0;
}
请问为什么我输出的结果是 3  7呢 = =
2020-10-17 20:05:44
#include<cstdio>
using namespace std;
int main()
{
    int a[3][3],b=0,c=0;
    int i,j;
    for(i=0;i<3;i++)
        for(j=0;j<3;j++)
            scanf("%d",&a[j][i]);
    for(i=0;i<3;i++)
        b+=a[i][i];
    for(i=2,j=0;i<=0&&j<3;i--,j++)
        c+=a[j][i];
    printf("%d %d",b,c);
    return 0;
}
为什么我的不对
2020-07-23 18:25:39
#include <stdio.h>
int main(void)
{
    int a[3][3];
    int e,g;       //主对角线,副对角线,元素和
    for(int m=0;m<=2;m++)
    {
        for(int n=0;n<=2;n++)
        {
            scanf("%d",&a[m][n]);
        }
    }
    e=a[0][0]+a[1][1]+a[2][2];
    g=a[0][2]+a[1][1]+a[2][0];
    printf("%d %d",e,g);
    return 0;
}
我的好鸡肋
2020-07-12 11:28:28
#include <stdio.h>
#define N 3
int main()
{
	int a[N][N];
	int i,j,k;
	int sum1=0,sum2=0;
	
	for(i=0;i<N;i++)
	for(j=0;j<N;j++)
		scanf("%d",&a[i][j]);

	for(k=0;k<N;k++)
	{
		sum1+=a[k][k];
		sum2+=a[k][N-1-k];
	}
		
	printf("%d %d",sum1,sum2);
	
	return 0;
}
2020-04-25 10:25:52
#include<stdio.h>

int main()
{
	int a[9] = {1,2,3,1,1,1,3,2,1};
	printf("%d %d",a[0] + a[4] + a[8],a[2] + a[4] + a[6]);
	return 0;
}
错误50%;真的不能投机取巧的啊
2019-10-14 10:13:40
#include <stdio.h>
#include <stdlib.h>
int main()
{
    int a[3][3],i,j,s159=0,s357=0;
    
    for(i=0,j=0;i<3;){
        scanf("%d",&a[i][j]);
    
        if(i==j)    {  s159+= a[i][j]; }        //00 11 22
        if((i+j)==2){  s357+= a[i][j]; }        //02 11 20
        
        if(j++==2)  { j=0; ++i; }
    }
    printf("%d %d",s159,s357);
    
    return 0;
}
2019-10-09 01:56:18
int main()
{

	char array[3][3] = { 0 };
	
	int i, j;
	for (i = 0; i < 3; i++)
	{
		for (j = 0; j < 3; j++)
		{
			scanf("%d", &array[i][j]);
		}
	}

	int sum1, sum2;
	sum1 = array[0][0] + array[2][2] + array[1][1];
	sum2 = array[0][2] + array[2][2] + array[2][0];

	printf("%d %d", sum1, sum2);
	return 0;
}

求教一下为什么是50%正确呢?
2019-10-07 21:09:51