11.14 二维数组

本文深入探讨了多种矩阵运算及算法实现,包括矩阵对角线元素的和与积、上三角与下三角元素之和、二维数组的行与列元素之和、杨辉三角的打印、矩阵加法与转置、局部极大值的查找等。通过具体的C语言代码示例,详细讲解了每种算法的设计思路与实现过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

2.求一个3×3矩阵对角线元素之和、积、上三角、下三角元素之和。

#include <stdio.h>
#define  N  3
int main()
{
	int i,j,sum,ji,s3,x3;
	sum=0,ji=1,s3=0,x3=0;
	int a[N][N]={{1,2,3},{4,5,6},{7,8,9}};
	printf("3x3矩阵\n");
	for(i=0;i<3;i++)
	{
		for(j=0;j<3;j++)
		{
			printf("%3d",a[i][j]);
		}
		printf("\n");
	}
	for(i=0;i<3;i++)
	{
	for(j=0;j<3;j++)
	if(i<=j)
	{
	s3+=a[i][j];
	 }
	}
	for(i=0;i<3;i++)
	{
	for(j=0;j<3;j++)
	if(j<=i)
	{
	x3+=a[i][j];
	 }
	}
	for(i=0;i<3;i++)
	{
	for(j=i;j<3;j++)
	if(i==j)
	{
	sum=sum+a[i][j];
	ji=ji*a[i][j];
	 } 
	}
	printf("和=%d 积=%d 上三角和=%d 下三角和=%d",sum,ji,s3,x3);
}

6.编写程序求一个二维数组各行和各列元素之和。(程序有问题?)

#include <stdio.h>
#define  N  3
int main()
{
	int i,j,sum;
	sum=0;
	int a[N][N]={{1,2,3},{4,5,6},{7,8,9}};
	printf("3x3矩阵\n");
	for(i=0;i<3;i++)
	{
		for(j=0;j<3;j++)
		{
			printf("%3d",a[i][j]);
		}
		printf("\n");
	}
	for(i=0;i<3;i++)
	{
	for(j=0;j<3;j++)
	sum=sum+a[i][j];
	 } 
	printf("和=%d",sum);
	}

1.输入一个正整数n(1≤n≤10),根据下列式子生成n×n矩阵,然后输出该矩阵。

 A[i][j]=i×n+j+1

#include <stdio.h>
int main()
{
	int i,j,n;
	scanf("%d",&n);
	int a[n][n]={0};
	for(i=0;i<n;i++)
	{
	for(j=0;j<n;j++)
	{
	  a[i][j]=i*n+j+1;
	  printf("%4d",a[i][j]);
	}
	 printf("\n");
	 } 
}

3.打印出以下的杨辉三角形(要求打印出10行)。

1

1 1

1 2 1

1 3 3 1

1 4 6 4 1

1 5 10 10 5 1

…… …… ……

4.编写程序,实现B=A+A',即把矩阵A加上A的转置,存放在矩阵B中。

#include<stdio.h>
int main()
{
    int i,j,n,a[3][3],b[3][3];
    n=0;
    printf("请输入一个矩阵A:\n");
    for(i=0;i<3;i++)
        {
            for(j=0;j<3;j++)
            scanf("%d",&a[i][j]);
        }
    printf("请输入一个矩阵A的转置:\n");
    for(j=0;j<3;j++)
        {
            for(i=0;i<3;i++)
            scanf("%d",&a[j][i]);
        }
    for(i=0;i<3;i++)
        {
            for(j=0;j<3;j++)
            b[i][j]=a[i][j]+a[j][i];
        }
    printf("矩阵B为:\n");
    for(i=0;i<3;i++)
    {
for(j=0;j<3;j++)
{
printf("%3d",b[i][j]);
}
printf("\n");
}
return 0;
}

5.编写程序求一个二维数组四边元素之和。

7.若矩阵A中的非边界元素A[i][j]大于上下左右四个相邻元素,称A[i][j]是矩阵的局部极大值。编程实现输出矩阵的所有局部极大值。矩阵由实验者自行确定。

8.编写程序,实现两个方阵之和(对应元素之和)、之差(对应元素之差)、之积。两个方阵乘积公式如下C=A×B:

cij=k=0paik×bkj=ai0×b0j+ai[1]×b1j+…+a[i][p]×b[p][j].

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值