求一个5*5的整型矩阵两条对角线元素之和

求一个5*5的整型矩阵两条对角线元素之和,第1张

C语言示例代码如下:

#include<stdioh>

int main(){int i,sumX=0,sumY=0,sum=0;

int num[5][5]=

{{1,2,3,4,5},

{6,7,8,9,10},

{11,12,13,14,15},

{16,17,18,19,20},

{21,22,23,24,25}};

for(i=0;i<5;i++){//计算对角线

sumX+=num[i][i];

sumY+=num[5-i][i];}

sum=sumX+sumY-num[2][2];//相加对角线并去除重复加的部分。

printf("%d\n",sum);return 0;}

扩展资料

矩阵的研究历史悠久,拉丁方阵和幻方在史前年代已有人研究。

在数学中,矩阵(Matrix)是一个按照长方阵列排列的复数或实数集合,最早来自于方程组的系数及常数所构成的方阵。这一概念由19世纪英国数学家凯利首先提出。作为解决线性方程的工具,矩阵也有不短的历史。

成书最早在东汉前期的《九章算术》中,用分离系数法表示线性方程组,得到了其增广矩阵。在消元过程中,使用的把某行乘以某一非零实数、从某行中减去另一行等运算技巧,相当于矩阵的初等变换。

但那时并没有现今理解的矩阵概念,虽然它与现有的矩阵形式上相同,但在当时只是作为线性方程组的标准表示与处理方式。

矩阵正式作为数学中的研究对象出现,则是在行列式的研究发展起来后。逻辑上,矩阵的概念先于行列式,但在实际的历史上则恰好相反。

日本数学家关孝和(1683年)与微积分的发现者之一戈特弗里德·威廉·莱布尼茨(1693年)近乎同时地独立建立了行列式论。其后行列式作为解线性方程组的工具逐步发展。1750年,加布里尔·克拉默发现了克莱姆法则。

参考资料来源:百度百科-矩阵

代码:

#include&lt;iostream&gt;

using namespace std;

int main()

{

int sum=0;

int n=0;

intarray;//指向整型的指针的指针

cout&lt;&lt;"请输入矩阵的维数:"&lt;&lt;endl;

cin&gt;&gt;n;

array=new int[n];//存放指针的数组

for(int k=0;k&lt;n;k++)

{

array[k]=new int[n];//指向一个整型数组

}

cout&lt;&lt;"请输入nn个值:"&lt;&lt;endl;

for(int i=0;i&lt;n;i++)

{

for(int j=0;j&lt;n;j++)

{

cin&gt;&gt;array&lt;i&gt;[j];

cout&lt;&lt;array&lt;i&gt;[j]&lt;&lt;"";

}

cout&lt;&lt;endl;

}

for(int i=0;i&lt;n;i++)

sum+=array&lt;i&gt;&lt;i&gt;;

cout&lt;&lt;"两条对角线元素之和为:"&lt;&lt;sum&lt;&lt;endl;

system("pause");

return 0;

}

扩展资料:

函数名:system

功能:发出一个DOS命令

用法:int system(charcommand);

程序例:

#include&lt;stdlibh&gt;

#include&lt;stdioh&gt;

int main(void)

{

printf("About to spawn and run a DOS command\n");

system("dir");

return 0;

}

如:system("pause")可以实现冻结屏幕,便于观察程序的执行结果;system("CLS")可以实现清屏 *** 作。而调用color函数可以改变控制台的前景色和背景,具体参数在下面说明。

例如,用system("color 0A");其中color后面的0是背景色代号,A是前景色代号。各颜色代码如下:

0=黑色1=蓝色2=绿色3=湖蓝色4=红色5=紫色6=7=白色8=灰色9=淡蓝色A=淡绿色B=淡浅绿色C=淡红色D=淡紫色E=淡F=亮白色

(注意:Microsoft Visual C++60支持system)

颜色属性由两个十六进制数字指定--第一个对应于背景,第二个对应于前景。每个数字

可以为以下任何值:

0=黑色8=灰色

1=蓝色9=淡蓝色

2=绿色A=淡绿色

3=浅绿色B=淡浅绿色

4=红色C=淡红色

5=紫色D=淡紫色

6=E=淡

7=白色F=亮白色

参考资料:

百度百科——system(函数)

#include<stdioh>

#define n 3

int main()

{

int i,j,a[n][n],sum=0;

printf("请输入矩阵(33):\n");

for(i=0;i<n;i++)

for(j=0;j<n;j++)

scanf("%d",&a[i][j]);

for(i=0;i<n;i++)

sum+=a[i][i];

printf("对角线之和为:%d\n",sum);

return 0;

}

C++

代码

#include<iostream>

#include<iomanip>

using namespace std;

int main()

{

int a[3][3],m=0,n=0;

for(int i=0;i<3;i++)

for(int j=0;j<3;j++)

cin>>a[i][j];

for(int i=0;i<3;i++)

{

m+=a[i][i];

n+=a[i][2-i];

}

cout<<m<<' '<<n<<endl;

return 0;

}

扩展资料:

一、return在函数中的作用

我们如果将函数看做一个加工厂,参数就是我们向加工厂投入的原料,具体的函数功能实际上就是加工的过程,而return语句代表返回值,就是加工厂在实现加工之后给“投资人”的成品。

二、return语句的特点

1、在函数当中,遇到return语句之后就意味着函数运行的结束,在此之后的代码是不运行的。

2、它不支持任何运算也没有任何内建方法,和任何其他的数据类型比较是否相等时永远返回false,也可以将None赋值给任何变量。

3、执行到return语句时,会退出函数,return之后的语句不再执行。但将return语句放在try语句块中,是个例外。

三、return的默认值:return函数默认的返回值为undefined。

#include<stdioh>

int main()

{

int a[3][3],sum=0;

int i,j;

for(i=0;i<3;i++)

for(j=0;j<3;j++)

scanf("%d",&a[i][j]);

for(i=0;i<3;i++)

for(j=0;j<3;j++)

if(i==j||(i+j==2))

sum=sum+a[i][j]; 

printf("sum=%d\n",sum);

return 0;

}

运行效果:

扩展资料:

main函数用法

1、C++中的main函数

C++继承了C语言的大部分特性,因此保留了“程序总是从main函数开始执行,且总是默认从main函数的return语句或结尾处结束运行”这一传统,但是要注意,C++中的main函数要想作为程序执行的出入口,必须写在全局(Global)范围,

不能写成某个结构体或某个类的成员。虽然main函数可以作为结构体或者类的成员函数,但相应地会失去作为程序出入口的功能。

C++中全局main函数的书写格式与C语言完全相同,功能也完全相同,且同一C++程序同样只能有一个全局main函数。

2、Java中的main函数

Java同样是以main函数作为程序执行出入口的,但Java作为“更纯洁”的面向对象语言,它的main函数与C/C++有很大的不同。

首先,返回值的概念淡化,在Java Application中main不允许返回值,因此int main是被禁止的,必须使用void main,int main仅限在JavaBean中使用。

其次,Java中所有的函数必须属于类,没有什么全局函数一说,因此main函数不能是全局成员,必须是某个类的成员。

第三,由于main函数变成了类的成员函数,因此要想直接被系统调用,还必须使用public static使其成为静态函数并具有公开权限。

第四,main函数的参数被简化,只需要提供字符串数组即可,不需要提供参数个数(这是由于Java的数组具有下标检查功能的原因)

Java Application中的main函数一般格式如下(类名可以自定义,但保存为Java源码时,主文件名必须与类名相同,否则可能无法运行)

public class MainDemo{

public static void main(String[]args){

//TODO:在此处写入主函数的内容

}

}

Java Applet的运行机制与Java Application完全不同,因此不需要main函数

3、C#中的main函数

C#中的main函数与Java大同小异,同样必须是类成员,同样使用字符串数组作唯一参数,同样是静态函数,同样的void main,

与之不同的是:main的首字母变成了大写,即"Main函数“,且是否限定为public级别已经无所谓了(默认没有public,但某些场合可能还是需要public)

另外,需要注意的是,C#中不再有”类名必须与主文件名同名“的限制,即使类名不和主文件名相同,程序照样可以运行。

C#应用程序中的main函数默认是这样的(注意main的首字母已是大写)

C#和C/C++、java不同的是C#不在拘泥于必须从main()函数开始执行,C#是属于事件触发。

class Program{

static void Main(string[]args){

改了一下
using System;
class Program
{
static void Main()
{
int[,] matrix = { { 34, 6, 9 }, { 2, 5, 23 }, { 3, 7, 15 } };
int a = 0, b = 0;
for (int i = 0; i < 3; i++)
{
a += matrix[i, i];
b += matrix[3 - 1 - i, i];
}
ConsoleWriteLine("\\:{0},/:{1}", a, b);
}
}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/10234406.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-06
下一篇 2023-05-06

发表评论

登录后才能评论

评论列表(0条)

保存