c++,输入一个未知大小的数组怎么做??? 要求有回答范例。。。

 我来答
大宝妈谈教育
高粉答主

2020-05-02 · 关注我不会让你失望
知道小有建树答主
回答量:3306
采纳率:100%
帮助的人:54.9万
展开全部

如下参考:

1.首先,定义一个常量大小来控制数组的大小。

2.定义一个自定义函数度来输入二维数组中每个已知元素的值。

3.使用双循环,输入二维数组的值,如下图所示。

4.在主函数中,定义两个整数变量m和n,并保存数组的行和列。

5.接下来,定义一个二维数组,如下图所示。

6.输入数组的行数和列数,存储在变量m和n中。

7.然后,输入一个二维数组并将其保存为变量a。

8.最后,在计算权重时,输出一个二维数组。

9.运行程序,输入一个二维数组到计算机中,计算机将自动将其读入并输出。

mafangsan
推荐于2017-10-01 · TA获得超过1.2万个赞
知道大有可为答主
回答量:1万
采纳率:71%
帮助的人:2597万
展开全部

C++本身不支持未知大小的动态数组,你的需求通常有两种方法可以解决。

 

方法1:动态申请内存法

代码片段如下:

int *p,num;
cout<<"请输入你的数组大小";
cin>>num; //运行时得到了数组大小
p=new int[num]; //根据需求动态申请内存
//这里可以输入数组并干活了
delete []p; //释放内存

方法2:使用向量Vector

1)Vector是C++STL中提供的向量;

2)向量的大小可以动态改变;

3)向量可以通过下标访问元素(感觉像使用数组);

4)可以通过push_back向向量中添加元素并改变大小。

代码片段如下:

#include <vector> //文件包含
//......
vector <int> myArray;
//可以根据数据需求用 myArray.push_back(整数);来添加元素
//可以通过下标访问向量元素
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友c19c0d0
推荐于2017-09-23 · TA获得超过1537个赞
知道小有建树答主
回答量:464
采纳率:0%
帮助的人:452万
展开全部
可以用vector容器。。
比如说输入一个大小未知的数组,当输入的数字为-1的时候停止输入。
然户把数组数输出……
代码如下。
#include<iostream>
#include<vector>
using namespace std;
int main()
{
int a;
vector<int>p;
while(cin>>a)
{
if(a==-1)
break;
p.push_back(a);
}

for(int i=0;i<p.size();i++)
cout<<p[i]<<' ';
cout<<endl;
}
=======================
具体的楼主可以去百度……
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
slatop
2011-12-24 · TA获得超过1390个赞
知道小有建树答主
回答量:381
采纳率:100%
帮助的人:430万
展开全部
数组必须是常量.知道什么叫常量吧?
不过你可以这样.char *ch =new char[i];这里的i可以是变量.但是也要是先确定的值.
还有你也可以作用C++的字符串,string 来接收一个数组.然后再使用这个字符串调用c_str函数将C++字符串换转为C字符串.最后去掉字符串末尾的'\0'就是一个数组了.
再有一个办法,自己写一个数组类并且重载[]下标.这个有点长就不帮你写了.
你先确定下你要的是哪种吧
追问
知道常量、也知道用指针,但是i 的大小还是不知道。。。。
方法三、方法四都给我写一下吧~~谢谢~~
方法三我们学过 atoi ,但不知怎么用。。。。
非常感谢!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
jzp1
2011-12-24 · TA获得超过425个赞
知道小有建树答主
回答量:391
采纳率:50%
帮助的人:145万
展开全部
动态分配数组空间
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式