0 
 
    0 
 
    0 
 
    0 
 
    
0

0   
    3 
 
    0 
 
    0 
 
    0 
 
   
 0

0   
    0 
 
    0 
 
    6 
 
    0 
 
   
 0

0   
    0 
     
9    
   0 
 
    0 
 
    0

0   
    0 
 
    0 
 
    0 
 
    12 
   
 0

#include<iostream>

#include<iomanip>

using
namespace std;

int main()

{

int
number[5][3] = {

{5,
6,
4},      //5表示一共5列,6表示6行,4表示有4个非0元素

{1,
1,
3},      //记录存储的第一个非0元素的行数,列数和对应的值,后面的含义相同

{2,
3, 6},

{3,
2, 9},

{4,
4, 12}

};

int
k;      //用来存储非零元素的索引

k
= 1;

cout <<
"稀疏矩阵"
<< endl;

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

{

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

{

cout<<setiosflags(ios::left);

cout <<setw(10)<<
number[i][j];

}

cout << endl;

}

cout <<
"还原稀疏矩阵:"
<< endl;

for
(int i = 0; i <
number[0][0];i++)      //循环稀疏矩阵的列

{

for
(int j = 0; j <
number[0][1];j++)      //循环稀疏矩阵的行

{

if
(k <= number[0][2] && (i == number[k][0]) && (j
==
number[k][1]))      //判断是否为非零元素,如果是非零元素则输出非零元素

{

cout << setw(5)
<< number[k][2];

k++;

}

else

cout << setw(5)
<<
0;            //输出为0的元素

}

cout << endl;

}

return
0;

}

最新文章

  1. iOS开发 - OC - 实现本地数据存储的几种方式二(直接使用sqlite)
  2. noSuchMethodException问题
  3. HashMap 和 HashTable区别
  4. c#让窗体永在最前 调用windows api 将窗体设为topmost
  5. 【Lucene3.6.2入门系列】第15节_SolrJ高亮
  6. 7——使用TextView实现跑马灯
  7. AndroidUI--SlidingMenu使用例子
  8. C++输出数据到txt
  9. NSThread创建线程的三种方法
  10. editplus的设置
  11. 【Spring系列】Spring mvc整合redis(非集群)
  12. 第一篇:Python入门
  13. MongoDB 条件操作符
  14. String输出结果to thi
  15. QCAD 怎么把多余的线剪掉
  16. 如何编译luabind支持vs2010之后所有版本
  17. Kmeans:利用Kmeans实现对多个点进行自动分类—Jason niu
  18. linux系统切换用户
  19. syslog系统日志、Windows事件日志监控
  20. 基于R语言的时间序列分析预测

热门文章

  1. python中的{字典}
  2. C#中的委托、事件及事件的订阅
  3. 浅谈JS中 var let const 变量声明
  4. 自定义指令 VUE基础回顾7
  5. 木马防杀 花指令 OllyDbg
  6. 安装nginx + nginx-gridfs + mongodb
  7. MySQL 5.7开始支持JSON,那还有必要使用MongoDB存JSON吗?请列出你的观点/理由。
  8. 安装lamp服务器
  9. 树莓派安装C#运行环境
  10. pandas 筛选