C语言的二维数组问题

从键盘给3*3的二维数组赋值,求右上角三角数之和包括对角线

#include <stdio.h>
#include<stdlib.h>
#include<math.h>
#include<string.h>
int main()
{
    int i, j, n, sum;
    n = 3;
    sum = 0;
    int a[n][n];
    memset(a, 0, sizeof(a));
    for(i = 0; i < n; i++)
    {
        for(j = 0; j < n; j++)
        {
            scanf("%d", &a[i][j]);
        }
    }
 
    for(i=0;i<3;i++){
        for(j=0;j<3;j++){
            if(j>=i){
                sum += a[i][j];
            }
        }    
    }
    printf("上三角的和是:%d",sum);
}

 

/* Note:Your choice is C IDE */
#include "stdio.h"
void main()
{
    int a[3][3] = {
    	{1,2,3},
    	{4,5,6},
    	{7,8,9}	
    };
    int i,j;
    int sum = 0;
    for(i=0;i<3;i++){
    	for(j=0;j<3;j++){
    		if(j>=i){
    			sum += a[i][j];
    		}
    	}	
    }
    printf("上三角的和是:%d",sum);
}

 

#include <stdio.h>
#include<stdlib.h>
#include<math.h>
#include<string.h>
int main()
{
    int i, j, n, sum;
    n = 3;
    sum = 0;
    int a[n][n];
    memset(a, 0, sizeof(a));
    for(i = 0; i < n; i++)
    {
        for(j = 0; j < n; j++)
        {
            scanf("%d", &a[i][j]);
        }
    }

    for(i=0;i<3;i++){
        for(j=0;j<3;j++){
            if(j>=i){
                sum += a[i][j];
            }
        }    
    }
    printf("上三角的和是:%d",sum);
}

 


#include <stdio.h>
#include<stdlib.h>
#include<math.h>
#include<string.h>
int main()
{
    int i, j, n;
    n = 3;
    int a[n][n];
    memset(a, 0, sizeof(a));
    for(i = 0; i < n; i++)
    {
        for(j = 0; j < n; j++)
        {
            scanf("%d", &a[i][j]);
        }
    }
 
    int sum = 0;
    for(i = n - 1, j = 0; i >= 0 && j < n; i--, j++)
    {
        sum += a[i][j];
    }//此处我单层循环,一次变化了两个值,也可以嵌套循环做
    printf("%d\n", sum);
    return 0;

}

 

定义一个二维数组,然后循环嵌套就可以实现,思路先采纳一下,我马上提供代码案例

您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~

如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~

ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632