时间:2021-05-20
1、例如,原始二维数组为,逆向存放后变为。试建立一个类REVARR,完成上述工作。
具体要求如下:
(1)私有数据成员
int a[M][N]:初始化时存放原始二维数组,最终存放逆向存放后的二维数组。
(2)公有成员函数
REVARR(int x[M][N]):构造函数,用形参x初始化数据成员a。
void reverse():按题目要求处理二维数组。
void print():按二维数组方式输出a数组值。
(3)在主函数中完成对该类的测试。在程序的开头,定义符号常数M和N的值分别为3和4,表示数组的行数和列数。在主函数中定义数组int data[M][N],其初值如上。定义一个REVARR类的对象arr,并用数组data初始化该对象的成员a,输出原数组值,然后调用成员函数逆序存放二维数组,最后输出逆序后的二维数组。
#include "stdafx.h"#include<iostream>#define M 3#define N 4using namespace std;class REVARR{public: REVARR(int x[M][N]);//:构造函数,用形参x初始化数据成员a。 void reverse();//:按题目要求处理二维数组。 void print();//:按二维数组方式输出a数组值。private: int a[M][N];//:初始化时存放原始二维数组,最终存放逆向存放后的二维数组。};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<<"转换后\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列数:\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、编程:设计一个reverse()函数,实现数组元素逆序存放。在主函数中输入n个整数,调用reverse()函数将它们逆序存放,最后输出逆序后的结果
利用指针
#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的个数:"); scanf("%d",&n); printf("请输入%d个整数:",n); for(i=0;i<n;i++) scanf("%d",&b[i]); reverse(b,n); printf("%d个数组逆序后的结果:\n",n); for(i=0;i<n;i++) printf("%d\t",b[i]); printf("\n"); return 0;}到此这篇关于c++中将二维数组元素变换为逆向存放的实现代码的文章就介绍到这了,更多相关c++二维数组元素逆向存放内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
ios开发基础之二维数组详解首先我们知道oc中是没有二维数组的,二维数组是通过一位数组的嵌套实现的,但是别忘了我们有字面量,实际上可以和c/c++类似的简洁地创
C/C++动态数组的创建的实例详解在C++语言中,二维动态数组主要使用指针的方法建立,以建立一个整数二维数组为例:#include#include#includ
1、功能:输入6个学生的5门课程成绩,计算出每个学生的平均分和每门课程的平均分。2、C语言实现代码:(其实就是用二维数组来实现的,二维数组的引用传递使用数组指针
本文以实例演示了C#各种数组的基本用法。主要包括:一维数组、二维数组、锯齿型数组、长度不同的两个数组、3行4列的矩阵数组等。具体实现代码如下:usingSyst
本文实例讲述了php实现搜索一维数组元素并删除二维数组对应元素的方法。分享给大家供大家参考。具体如下:定义一个一维数组一个二维数组如下$fruit=array(