c++中將二維數(shù)組元素變換為逆向存放的實(shí)現(xiàn)代碼
1、例如,原始二維數(shù)組為,逆向存放后變?yōu)椤T嚱⒁粋€類REVARR,完成上述工作。
具體要求如下:
(1)私有數(shù)據(jù)成員
int a[M][N]:初始化時存放原始二維數(shù)組,最終存放逆向存放后的二維數(shù)組。
(2)公有成員函數(shù)
REVARR(int x[M][N]):構(gòu)造函數(shù),用形參x初始化數(shù)據(jù)成員a。
void reverse():按題目要求處理二維數(shù)組。
void print():按二維數(shù)組方式輸出a數(shù)組值。
(3)在主函數(shù)中完成對該類的測試。在程序的開頭,定義符號常數(shù)M和N的值分別為3和4,表示數(shù)組的行數(shù)和列數(shù)。在主函數(shù)中定義數(shù)組int data[M][N],其初值如上。定義一個REVARR類的對象arr,并用數(shù)組data初始化該對象的成員a,輸出原數(shù)組值,然后調(diào)用成員函數(shù)逆序存放二維數(shù)組,最后輸出逆序后的二維數(shù)組。
#include "stdafx.h" #include<iostream> #define M 3 #define N 4 using namespace std; class REVARR { public: REVARR(int x[M][N]);//:構(gòu)造函數(shù),用形參x初始化數(shù)據(jù)成員a。 void reverse();//:按題目要求處理二維數(shù)組。 void print();//:按二維數(shù)組方式輸出a數(shù)組值。 private: int a[M][N];//:初始化時存放原始二維數(shù)組,最終存放逆向存放后的二維數(shù)組。 }; REVARR::REVARR(int x[M][N]) { int i,j; for(i=0;i<M;i++) { for(j=0;j<N;j++) { a[i][j]=x[i][j]; } } } void REVARR::reverse() { int t,i,j; for(i=0;i<M-1;i++) { for(j=0;j<N;j++) { t = a[i][j]; a[i][j] = a[M-i-1][N-j-1]; a[M-i-1][N-j-1] = t; } } } void REVARR::print() { int i,j; cout<<"轉(zhuǎn)換后\n"; for(i=0;i<M;i++) { for(j=0;j<N;j++) { cout<<a[i][j]<<" "; } cout<<endl; } cout<<endl; } int main() { int data[M][N]; int i,j; cout <<"請輸入3行4列數(shù):\n"; for(i=0;i<M;i++) { for(j=0;j<N;j++) { cin>>data[i][j]; } } REVARR arr(data); arr.reverse(); arr.print(); system("pause"); return 0; }
2、編程:設(shè)計(jì)一個reverse()函數(shù),實(shí)現(xiàn)數(shù)組元素逆序存放。在主函數(shù)中輸入n個整數(shù),調(diào)用reverse()函數(shù)將它們逆序存放,最后輸出逆序后的結(jié)果
利用指針
#include<stdio.h> void reverse(int *a,int n) { int i,j,m,t; m=(n-1)/2; for(i=0;i<=m;i++) {j=n-i-1; t=*(a+i); *(a+i)=*(a+j); *(a+j)=t; } } int main() { int n,i,b[10]; printf("請輸入n的個數(shù):"); scanf("%d",&n); printf("請輸入%d個整數(shù):",n); for(i=0;i<n;i++) scanf("%d",&b[i]); reverse(b,n); printf("%d個數(shù)組逆序后的結(jié)果:\n",n); for(i=0;i<n;i++) printf("%d\t",b[i]); printf("\n"); return 0; }
到此這篇關(guān)于c++中將二維數(shù)組元素變換為逆向存放的實(shí)現(xiàn)代碼的文章就介紹到這了,更多相關(guān)c++二維數(shù)組元素逆向存放內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
C++實(shí)現(xiàn)簡單版圖書管理系統(tǒng)
這篇文章主要為大家詳細(xì)介紹了C++實(shí)現(xiàn)簡單版圖書管理系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-06-06c++中處理相關(guān)數(shù)學(xué)函數(shù)
數(shù)學(xué)庫函數(shù)聲明在 math.h 中,主要有:2013-04-04CString,字符串,整數(shù)等相互轉(zhuǎn)換方法(推薦)
下面小編就為大家?guī)硪黄狢String,字符串,整數(shù)等相互轉(zhuǎn)換方法(推薦)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2016-09-09C++實(shí)現(xiàn)校園導(dǎo)游系統(tǒng)
這篇文章主要為大家詳細(xì)介紹了C++實(shí)現(xiàn)校園導(dǎo)游系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-03-03