C/C++:如何定义一个由用户自己从键盘输入长度的一维数组?请用C和C++分别说一下,并打一下代码,谢谢了
5个回答
展开全部
1、数组元素是组成数组的基本单元。数组元素也是一种变量,其标识方法为数组名后跟一个下标。下标表示了元素在数组中的顺序号。
2、数组元素的一般形式,数组名 [下标],其中下标只能为整型常量或整型表达式。如为小数时,C编译将自动取整。
3、a[5];a[i+j];a[i++]都是合法的数组元素。数组元素通常也称为下标变量。必须先定义数才能使用下标变量。
4、逐个输出各下标变量:for(i=0; i<10; i++),printf("%d";a[i);而不能用一个语句输出整个数组。
5、用来存放字符量的数组称为字符数组,字符数组的定义形式与前面介绍的数值数组相同。
6、由于字符型和整型通用,也可以定义为int c[10],但这时每个数组元素占2个字节的内存单元。字符数组也可以是二维或多维数组。
展开全部
c99标准才支持,变长数组。你的编译器不一定能编译通过。
----------------------------------
int n;
scanf ("%d", &n);
int array[n]
---------------------------------
C++ 语言使用变长数组语法一样
------------------------------------------
int n;
cin >> n
int array[n]
---------------------------------------------------
另外可以使用
vector.
----------------------------------
int n;
scanf ("%d", &n);
int array[n]
---------------------------------
C++ 语言使用变长数组语法一样
------------------------------------------
int n;
cin >> n
int array[n]
---------------------------------------------------
另外可以使用
vector.
追问
谢谢了,不过不行诶
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
int n;
cout<<"请输入需要多少个数:";
cin>>n;
int a[n];
cout<<"请输入"<<n<<"个数:\n“;
for(int i=0;i<n;i++)
cin>>a[i];
cout<<a<<endl;
system("pause");
return 0;
cout<<"请输入需要多少个数:";
cin>>n;
int a[n];
cout<<"请输入"<<n<<"个数:\n“;
for(int i=0;i<n;i++)
cin>>a[i];
cout<<a<<endl;
system("pause");
return 0;
追问
谢谢了,不过不行诶
追答
C++的写法,没问题
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include<stdio.h>
int main()
{
int i,count;
printf("请输入你要定义数组大小");
scanf("%d",&count);
int a[count];
for(i=0;i<count;i++)
{
printf("请输入要存入数组的第%d数!",i+1);
scanf("%d",a[i]);
}
}
int main()
{
int i,count;
printf("请输入你要定义数组大小");
scanf("%d",&count);
int a[count];
for(i=0;i<count;i++)
{
printf("请输入要存入数组的第%d数!",i+1);
scanf("%d",a[i]);
}
}
更多追问追答
追问
谢谢了,不过这个不行吧,你自己试试
追答
#include
int main()
{
int i,count;
cout>count;
int *a=NULL;
a=(int *)malloc(sizeof(int));
for(i=0;i>a[i];
}
cout<<"数组: "<<endl;
for(i=0;i<count;i++)
{
cout<<a[i]<<" ";
}
cout<<endl;
system("pause");
free(a);
return 0;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
C++的代码:
int N = 0;
cin>>N;
int *p= new int[N]; //动态分配N个元素的int数组,把数组的指针赋值给p
删除动态分配的内存是:delete [] p; //方括号不可缺少。
下面使用该数组的方法就是:p[index]就是访问了下表为index的数组元素。
C语言的代码:
int *a;
int N;
scanf("%d", &N);
a = (int *) malloc(N * sizeof(int));
....
free(a);
int N = 0;
cin>>N;
int *p= new int[N]; //动态分配N个元素的int数组,把数组的指针赋值给p
删除动态分配的内存是:delete [] p; //方括号不可缺少。
下面使用该数组的方法就是:p[index]就是访问了下表为index的数组元素。
C语言的代码:
int *a;
int N;
scanf("%d", &N);
a = (int *) malloc(N * sizeof(int));
....
free(a);
更多追问追答
追问
先谢谢了!不过要打函数吗?我刚刚试了一下,好像还是不行啊
追答
你是问C语言还是C++呢?
你的目的是什么,我帮你写出来如何动态分配用户输入的长度的数组。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询