C++實現求動態矩陣各元素的和

本文實例為大傢分享瞭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;
}

效果截圖:

​​​​​​​

以上就是本文的全部內容,希望對大傢的學習有所幫助,也希望大傢多多支持WalkonNet。

推薦閱讀: