动态的二维数组的创建与停止

本文介绍了在C++中如何使用vector创建二维动态数组,并提供了两种解决方案:一种是遇到两个回车结束输入,另一种是基于string为空判断来停止输入。
摘要由CSDN通过智能技术生成

标题 基于vector的二维动态向量的输入输出
刚刚参加了某为的笔试,结果被一个以前忽略的问题给卡住了,以前做的都是 固定N行N列或者动态一维数组输入,这次碰到一个动态2维大小输入,行列均是不确定大小的.不知道怎么停了,回去查阅了下资料,思考记录下这个细节,以后引以为戒,不要忽视细节…
方案一 遇到两个回车结束``

#include<bits/stdc++.h>
using namespace std;
int main()
{  
	vector< vector<int>> a;
	vector<int> b;
	char d;
	int c;
	while (cin>>c) {
		b.push_back(c);
		d = getchar();
		if (d =='\n') {
				a.push_back(b);
				b.clear();
				d = getchar();
				if (d == '\n')
					break;
				else {
					b.push_back(int(d - '0'));
				}
		}

	}
	for (int i = 0; i < a.size(); i++) { 
	for (int j = 0; j < a[i].size(); j++)
	{ 
	cout << a[i][j] << " "; }
	cout << endl; 
	}
	cout << a.size() << "  " << a[0].size();
	return 0;
}

</
### 回答1: 在LabVIEW中,我们可以使用"删除数组的元素"函数来删除二维数组。 首先,使用一个"创建数组"函数创建一个二维数组。将要删除的当作输入,然后将二维数组连接到"删除数组的元素"函数的输入。将"元素被删除"设置为"","删除元素数量或范围"设置为一个确定的数,这样所有相应的元素都会被删除。 最后,将"删除数组的元素"函数的输出连接到你将要使用或显示的地方。 以下是一个实例: 1. 使用一个"创建二维数组"函数创建一个3行2二维数组,输入的数据为[1,2;3,4;5,6]。 2. 将要删除的作为输入连接到"删除数组的元素"函数的输入。 3. 设置"元素被删除"为"","删除元素数量或范围"为"1",这样数组中的第一就会被删除。 4. 将"删除数组的元素"函数的输出连接到你将要使用或显示的地方。 这样,最终输出的二维数组将只剩下两[2;4;6]。 希望这能帮助你解决问题! ### 回答2: 在LabVIEW中,要删除二维数组的一,可以使用以下步骤: 首先,将二维数组传入一个带有两个输入参数的For循环中。将循环设置为迭代指标为索引,循环次数设置为数组数。 在循环之前,创建一个新的二维数组,其数比源数组少1。可以使用一个数组变量和一个二维数组大小函数来实现。将原数组的行数输入二维数组大小函数的行数输入端,原数组数减去1(要删除的索引)输入二维数组大小函数的数输入端。将二维数组大小函数的输出连接到数组变量的大小输入端。 进入循环,使用一个Case结构,将迭代索引连接到Case结构的选择器上。Case结构应该包含一个空的Case,以及一个将源数组的一转置成一行的Case。在转置的Case中,使用一个Index Array函数,将源数组作为输入数组,使用迭代索引作为索引输入。然后,将转置的行连接到新数组的索引输入端。另外,还需要一个控制循环的停止条件,可以使用一个右移寄存器来实现。 当循环结束后,从数组变量的输出连接到删除了某一的新数组。 最后,将新数组用途到原先的变量,即可实现删除二维数组的一。 需要注意的是,在进行操作之前,应该确保输入的二维数组数大于1。若数等于1,则无法删除任何。此外,使用该方法删除可能会导致索引无效,因此要小心谨慎地操作。 ### 回答3: 在LabVIEW中删除二维数组可以使用以下几个步骤: 1. 首先,创建一个输入的二维数组,并在其右侧放置一个数字输入控件。这个数字输入控件表示要删除的的索引。同时,创建一个输出的二维数组供结果使用。 2. 使用索引数组函数将数字输入控件中的数字转换为一个一索引数组。这个索引数组将包含要删除的的索引。 3. 使用索引数组函数,将输入的二维数组与这个一索引数组连接。此时,输出的二维数组中将包含所有的,包括要删除的。 4. 使用删除数组元素函数,将索引数组中的数字作为要删除的元素的索引,并将输出连接到第三步的结果。这样就能得到一个删除了指定的输出二维数组。 5. 最后,将第四步的结果连接到输出的一数组的显示控件中,用于观察所删除后的结果。 通过以上步骤,LabVIEW中就能删除一个二维数组。这些步骤可以在LabVIEW的Block Diagram中以数据流的方式实现。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值