牛客网基础C++编程-创建动态数组

本文介绍了如何在C++中使用`new`操作符创建动态数组,包括单维数组的实例化、赋值及二维数组的创建与元素初始化。通过实例演示了如何根据用户输入创建整型数组,并展示创建和释放动态数组的正确方式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

牛客网基础C++编程-创建动态数组

new申请空间:

指针变量名 = new 存储数据类型

int* p = new int;//在堆区创建整型变量,返回变量地址
int *p = new int(10); //创建的同时赋初值
delete p;

int* p = new int[10];//创建动态数组
int *p = new int[10]{1,2,3,4,5,6,7,8,9,10};   //创建的同时给数组赋初值
delete[] p;

//二维动态数组
 int m;//m行
 int n;//n列
 cin>>m>>n;
 int **a=new int *[m];//m行,每行是一个一维动态数组
 for(int i=0;i<m;i++){//建立m行一维数组
 	a[i]=new int[n];//每个一维数组有n个数
 }
 for(int i=0;i<m;i++){//初始化
 for(int j=0;j<n;j++){
 	a[i][j]=0;        
        }
    }
//二维动态数组的释放
for( int i = 0; i < m; i++ )
  delete[] p[i];
delete[] p;

1. 创建动态数组

描述
键盘输入一个正整数 n,创建大小为 n 的数组(采用动态数组的方式),将数组中的元素初始化为 n、n+1、…、2n - 1。并输出数组中的元素。
输入描述:
键盘输入一个正整数 n
输出描述:
输出数组中的元素,元素和元素之间使用空格隔开

#include <iostream>
using namespace std;

int main() {

    int n;
    cin >> n;
    
    // write your code here......
    int *arr=new int[n]();
    for(int i=0;i<n;i++){
        arr[i]=n+i;
        cout<<arr[i]<<" ";
    }
    

    return 0;
}

2. 创建二维动态数组
描述
输入一个正整数 nn,创建大小为 n*n的二维数组a(采用动态数组的方式),将a[i][j]初始化为i+j(0≤i<n,0≤j<n)。并输出数组中的元素。
输入描述:
输入一个正整数 n
输出描述:
输出n行,每行n个用空格隔开的整数表示数组a
示例1
输入:2
输出:
0 1
1 2

#include<bits/stdc++.h>
using namespace std;
int main(){
    int n;
    cin>>n;
    // write your code here......
    int **a=new int *[n];//n行,每行是一个一维动态数组
    for(int i=0;i<n;i++){//建立n行一维数组
        a[i]=new int[n];//每个一维数组有n个数
    }
    for(int i=0;i<n;i++){
        for(int j=0;j<n;j++){
            a[i][j]=i+j;
            cout<<a[i][j]<<" ";
        }
        cout<<endl;
    }
    return 0;
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值