c++:逆置随机数组

本文介绍了如何使用C++编程语言生成一个指定长度的动态数组,通过rand()和srand()函数赋以随机数,然后实现数组的逆置操作,展示逆置前后数组元素的变化过程。
摘要由CSDN通过智能技术生成

题目

编写程序, 按照指定长度生成动态数组, 用随机数对数组元素进行赋值, 然后逆置该数组元素。例如,数组A的初值为{6,3,7,8,2}, 逆置后的值为{2,8,7,3,6}。
要求: 输出逆置前、后的数组元素序列。

分析

根据题意,将实现分为几个步骤:

  • 生成随机数组
  • 输出原始数组
  • 逆置数组
  • 输出逆置后的数组

知识

  1. rand()和srand()要一起使用,其中srand()用来初始化随机数种子,rand()用来产生随机数。
  2. 要取得[a,b)的随机整数,使用(rand() % (b-a))+ a (结果值含a不含b)。
    要取得[a,b]的随机整数,使用(rand() % (b-a+1))+ a (结果值含a和b)。
    要取得(a,b]的随机整数,使用(rand() % (b-a))+ a + 1 (结果值不含a含b)。

代码

#include <iostream>
#include <cstdlib>
#include <ctime>
using namespace std;

void resort(int arry[],int size){
	int star=0;
	int end=size-1;
	while(end>star){
		int temp=arry[star];
		arry[star]=arry[end];
		arry[end]=temp;
		star++;
		end--;
	}
}

int main(){
	int size;
	cout<<"请输入数组长度:";
	cin>>size;
	srand(time(0));
	int* array = new int[size];
	for(int i=0;i<size;i++){
		array[i] = rand() % 1000;
	}
	cout<<"生成的数组为:"<<endl;
	for(int i=0;i<size;i++){
		cout<<array[i]<<" ";
	}
	cout<<endl;
	resort(array, size);
	cout<<"倒序后数组为:"<<endl;
	for(int i=0;i<size;i++){
		cout<<array[i]<<" ";
	}
	cout<<endl;
}
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值