本文实例为大家分享了C++实现动态矩阵各元素的求和,供大家参考,具体内容如下
一、n阶方阵求和
功能:输入方阵维度,点击<Enter>,然后根据提示输入矩阵各阶元素,点击<Enter>,最后输出矩阵以及矩阵各元素的和。
代码:
#include<iostream>
using namespace std;
//输入维度n,输出n维矩阵,并求各元素和
int main()
{
int **p,n,i,j,sum=0;
cout<<"请输入矩阵维度n:";
cin>>n;
p=new int*[n];
for(i=0;i<n;i++)
p[i]=new int[n];
if(p==NULL)
{
cout<<"没有申请到动态空间,即将退出"<<endl;
exit(3);
}
cout<<"请输入矩阵元素:"<<endl;
for(i=0;i<n;i++)
for(j=0;j<n;j++)
cin>>p[i][j];
for(i=0;i<n;i++)
{
for(j=0;j<n;j++)
{
cout<<p[i][j]<<"\t";
sum+=p[i][j];
}
cout<<endl;
}
cout<<"矩阵各元素之和为:"<<sum<<endl;
delete[]p;
return 0;
}
效果截图:
二、任意行任意列矩阵求和
功能:输入矩阵行数,点击<Enter>,输入矩阵行数,点击<Enter>,然后根据提示输入矩阵各阶元素,点击<Enter>,最后输出矩阵以及矩阵各元素的和。
代码:
#include<iostream>
using namespace std;
int main()
{
int **p,r,c,i,j,sum=0;
cout<<"请输入矩阵行数r:";
cin>>r;
cout<<"请输入矩阵列数c:";
cin>>c;
p=new int*[r];
for(i=0;i<r;i++)
p[i]=new int[c];
if(p==NULL)
{
cout<<"没有申请到动态空间,即将退出"<<endl;
exit(3);
}
cout<<"请输入矩阵元素:"<<endl;
for(i=0;i<r;i++)
for(j=0;j<c;j++)
cin>>p[i][j];
for(i=0;i<r;i++)
{
for(j=0;j<c;j++)
{
cout<<p[i][j]<<"\t";
sum+=p[i][j];
}
cout<<endl;
}
cout<<"矩阵各元素之和为:"<<sum<<endl;
delete[]p;
return 0;
}
效果截图:
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持编程网。