如何在C++中实现用一个键盘输入值定义数组内包含的元素个数?
答案:5 悬赏:20 手机版
解决时间 2021-02-19 14:03
- 提问者网友:你挡着我发光了
- 2021-02-19 04:56
例如输入5,数组中包含5个元素
最佳答案
- 五星知识达人网友:迷人又混蛋
- 2021-02-19 06:13
//可以使用动态分配空间,使用new和delete关键字。
//例如,定义一个动态的int类型的数组
#include<iostream>
using namespace std;
int main()
{
int *p;
int n;
cin>>n; //输入元素的个数。
p = new int[n]; //分配n个元素的一维整型数组的空间。
int i;
for(i=0;i<n;i++) //给数组元素赋值
p[i]=i+1;
for(i=0;i<n;i++) //输出数组元素
cout<<p[i]<<" ";
delete []p; //删除分配的空间。
return 0;
}
//例如,定义一个动态的int类型的数组
#include<iostream>
using namespace std;
int main()
{
int *p;
int n;
cin>>n; //输入元素的个数。
p = new int[n]; //分配n个元素的一维整型数组的空间。
int i;
for(i=0;i<n;i++) //给数组元素赋值
p[i]=i+1;
for(i=0;i<n;i++) //输出数组元素
cout<<p[i]<<" ";
delete []p; //删除分配的空间。
return 0;
}
全部回答
- 1楼网友:鱼忧
- 2021-02-19 08:30
这个好像不能这么做,内存申请的时候必须是固定的,而你的说法是申请是这个内存空间之是不固定的,这样是不符合定义标准的
- 2楼网友:轻雾山林
- 2021-02-19 08:01
用动态数组
#include <iostream.h>
int main()
{
const int a=5;
int b[a]; //,a是个常变量(只读变量)定义普通数组是必须给以它长度,否则编译出错
for(int i=0;i<a;++i)
cin>>b[i];
int c;
int *p=new int[c];//建立动态数组,c是一个变量 ,是可以改变的
cout<<"输入变量c的值 \n";
for(int k=0;k<c;++k)
cin>>p[k];
for(int j=0;j<c;++j)
cout<<p[j]<<" ";
delete[] p;
return 0;
}
- 3楼网友:神的生死簿
- 2021-02-19 06:50
动态开辟数组空间
int i,j=0;
cin>>i;
int*p;
p=new int[i];
下面是一个简单的例子
#include <iostream>
using namespace std;
int main ()
{
int i,j=0;
cin>>i;
int*p;
p=new int[i];
for (j=0;j<i;j++)
{
p[j]=j;
}
for (j=0;j<i;j++)
{
cout<<p[j]<<endl;
}
delete p;
return 0;
}
- 4楼网友:傲气稳了全场
- 2021-02-19 06:27
#include <iostream>
using namespace std;
int main()
{
int *a;
int i,n;
cout<<"please enter array size:" <<endl ;
cin >> n; // 数组大小
a = (int *) malloc(sizeof(int) * n); // 分配
cout<<"please enter " << n << " numbers:" <<endl ;
for (i=0;i<n;i++)
{
cin >> a[i]; // 键盘输入 n 个数
}
for (i=0;i<n;i++) cout << a[i] << " ";
cout << endl;
return 0;
}
输入例子:
please enter array size:
5
please enter 5 numbers:
12 34 56 888 999
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯