c++ vector二维数组的定义和插入 固定和可变大小

5 篇文章 0 订阅

C++:
固定大小:

#include <iostream>
#include <vector>
using namespace std;

int main()
{
    int row, column;
    cin >> row >> column;

    //key code:申请空间  
    vector<vector<int> > a(row, vector<int>(column));


    //使用空间  
    for (int j = 0; j < row; j++)
        for (int k = 0; k < column; k++)
            a[j][k] = rand() % 100;

    for (int j = 0; j < row; j++)
    {
        cout << endl;
        for (int k = 0; k < column; k++)
        {
            a[j][k] = rand() % 100;
            cout << a[j][k] << "     ";
        }
    }

    return 0;

}

可变大小:

#include<iostream>
#include<vector>
using namespace std;
 
void main()
{
	int r = 0, c = 0;
	cout << "Enter r: ";//规定二维数组行数
	cin >> r;
	cout << "Enter c: ";//规定二维数组列数
	cin >> c;
 
	vector<vector<int>>array;//定义二维数组
	vector<int>v;//定义一维数组
	array.clear();//将二维数组清空,或初始化(初始化代码很简单,不会可以百度)//也可不用这一步
	int temp=0;
	for (int i = 0; i < r; i++)//输入r*c的二维数组
	{
		v.clear();//子数组返回时要清除
		for (int j = 0; j < c; j++)
		{
			cin >> temp;
			v.push_back(temp);
 
		}
		array.push_back(v);
	}
 
	for (int i = 0; i < r; i++)//打印输入的二维数组
	{
		for (int j = 0; j < c; j++)
		{
			cout << array[i][j] << " ";
 
		}
		printf("\n");
	}
	while (1);
}

从vector<vector>array中获取行数和列数:

//行数
array.size();
//列数
array[0].size();

JAVA:

public class text {
    public static void contextLoads(int[][] a) {
        int rows=a.length;
        int cols=a[2].length;
        int[][]  b=new int[rows][cols];
        System.out.println(rows+"-"+cols);
    }

    public static void main(String[] args) {
        int[][] a=new int[5][3];
        contextLoads(a);
    }
}

转自https://blog.csdn.net/zmy_666/article/details/88069965?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522159665164719725219961367%2522%252C%2522scm%2522%253A%252220140713.130102334…%2522%257D&request_id=159665164719725219961367&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2allfirst_rank_ecpm_v3~pc_rank_v2-2-88069965.first_rank_ecpm_v3_pc_rank_v2&utm_term=%E7%94%A8vector%E5%AE%9A%E4%B9%89%E4%BA%8C%E7%BB%B4%E6%95%B0%E7%BB%84&spm=1018.2118.3001.4187

转自https://blog.csdn.net/weixin_30781433/article/details/97286318?biz_id=102&utm_term=%E7%94%A8vector%E5%AE%9A%E4%B9%89%E4%BA%8C%E7%BB%B4%E6%95%B0%E7%BB%84&utm_medium=distribute.pc_search_result.none-task-blog-2allsobaiduweb~default-3-97286318&spm=1018.2118.3001.4187

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值