數(shù)據(jù)結(jié)構(gòu)之矩陣行列和相等的實例
以下為展示“矩陣行列和相等”的簡單示例:
1.用c語言實現(xiàn)的版本
#include <stdio.h> #include <math.h> void main() { int a[16][16],i,j,n,k; printf("Please input n(1~15,it must be odd.): "); scanf("%d",&n); while(!(n>=1&&n<=15) || n%2==0) { printf("The number is invalid.Please insert again:"); scanf("%d",&n); } //初始化數(shù)組 for(i=0; i<=n; ++i) { for(j=0; j<=n; ++j) { a[i][j]=0; } } j = n/2 + 1; a[1][j] = 1; i = 1; for(k=2; k<=n*n; ++k) { i = i - 1; j = j + 1; if(i==0 && j==n+1) //行列都越界 { i = i+2; j = j-1; } else { if(i==0) //行越界 { i = n; } if(j==n+1) //列越界 { j = 1; } } if(a[i][j]==0) //如果里面沒數(shù)字 { a[i][j] = k; } else //得到新的數(shù)值 { i = i + 2; j = j - 1; a[i][j] = k; } } for(i=1; i<=n; ++i) { for(j=1; j<=n; ++j) { printf("%3d", a[i][j]); } printf("\n"); } }
2.用C++語言實現(xiàn)的版本
#include <iostream> #include <math.h> void main() { int a[16][16],i,j,n,k; std::cout<<"Please input n(1~15,it must be odd.): "; std::cin>>n; while(!(n>=1&&n<=15) || n%2==0) { std::cout<<"The number is invalid.Please insert again:"; std::cin>>n; } 初始化數(shù)組 for(i=0; i<=n; ++i) { for(j=0; j<=n; ++j) { a[i][j]=0; } } i = 0; j = n/2; a[i][j] = 1; for(k=2; k<=n*n; ++k) { i = i - 1; j = j + 1; if(i<=-1 && j>=n) //行列都越界 { i = 1; j = n - 1; } else { if( i<=-1 ) //行越界 { i = n - 1; } if(j>=n) //列越界 { j = 0; } } if(a[i][j]==0) //如果里面沒數(shù)字 { a[i][j] = k; } else //得到新的數(shù)值 { i = i + 2; j = j - 1; a[i][j] = k; } } for(i=0; i<=n-1; ++i) { for(j=0; j<=n-1; ++j) { printf("%3d", a[i][j]); } printf("\n"); } }
運行結(jié)果如下圖所示:
如有疑問請留言或者到本站社區(qū)交流討論,感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!
欄 目:C語言
下一篇:詳解C語言中Char型指針數(shù)組與字符數(shù)組的區(qū)別
本文標題:數(shù)據(jù)結(jié)構(gòu)之矩陣行列和相等的實例
本文地址:http://mengdiqiu.com.cn/a1/Cyuyan/1122.html
您可能感興趣的文章
- 01-10數(shù)據(jù)結(jié)構(gòu)課程設(shè)計- 解析最少換車次數(shù)的問題詳解
- 01-10數(shù)據(jù)結(jié)構(gòu)課程設(shè)計-用棧實現(xiàn)表達式求值的方法詳解
- 01-10APUE筆記之:進程環(huán)境詳解
- 01-10內(nèi)部排序之堆排序的實現(xiàn)詳解
- 01-10進程間通信之深入消息隊列的詳解
- 01-10海量數(shù)據(jù)處理系列之:用C++實現(xiàn)Bitmap算法
- 01-10如何求連續(xù)幾個數(shù)之和的最大值
- 01-10C++算法之海量數(shù)據(jù)處理方法的總結(jié)分析
- 01-10深入理解c++中char*與wchar_t*與string以及wstring之間的相互轉(zhuǎn)換
- 01-10用代碼和UML圖化解設(shè)計模式之橋接模式的深入分析


閱讀排行
本欄相關(guān)
- 04-02c語言函數(shù)調(diào)用后清空內(nèi)存 c語言調(diào)用
- 04-02func函數(shù)+在C語言 func函數(shù)在c語言中
- 04-02c語言的正則匹配函數(shù) c語言正則表達
- 04-02c語言用函數(shù)寫分段 用c語言表示分段
- 04-02c語言中對數(shù)函數(shù)的表達式 c語言中對
- 04-02c語言編寫函數(shù)冒泡排序 c語言冒泡排
- 04-02c語言沒有round函數(shù) round c語言
- 04-02c語言分段函數(shù)怎么求 用c語言求分段
- 04-02C語言中怎么打出三角函數(shù) c語言中怎
- 04-02c語言調(diào)用函數(shù)求fibo C語言調(diào)用函數(shù)求
隨機閱讀
- 01-10delphi制作wav文件的方法
- 01-10C#中split用法實例總結(jié)
- 08-05織夢dedecms什么時候用欄目交叉功能?
- 01-10SublimeText編譯C開發(fā)環(huán)境設(shè)置
- 01-11ajax實現(xiàn)頁面的局部加載
- 08-05dedecms(織夢)副欄目數(shù)量限制代碼修改
- 08-05DEDE織夢data目錄下的sessions文件夾有什
- 01-10使用C語言求解撲克牌的順子及n個骰子
- 01-11Mac OSX 打開原生自帶讀寫NTFS功能(圖文
- 04-02jquery與jsp,用jquery