您的位置:首页 > 编程语言 > C语言/C++

★★输入数据个数未知,如何动态输入 C/C++

2012-10-02 16:41 357 查看
C语言方式:

void main()  //输入为实数
{
int n,i;
double *a;
scanf("%d",&n);
a = (double*)malloc(n*sizeof(double));
for(i=0;i<n;i++)
scanf("%lf",&a[i]);

.
.
.
}
void main()  //输入为整数
{
int n,i;
int *a;
scanf("%d",&n);
a = (int*)malloc(n*sizeof(int));
for(i=0;i<n;i++)
scanf("%d",&a[i]);

.
.
.
}


C++方式:

void main()  //输入为整数
{

int n,i,m;
while(scanf("%d",&n)!=EOF)
{
int *a = new int[n+1];//int[n+1]这里最好使用n+1,不要用int
,不然数组可能会开得太小。(实例:曾开了int
,10个测试点,2个数组太小 RE)
for(i=0;i<n;i++)
//scanf("%d", &m);
cin>>m;
.
.
.

delete[] a;   //可有可无,有一次有了,反而编译错误
}


void main()//输入为整数
{
int n,i;
int *a;
//scanf("%d",&n);
cin>>n;
a=new int[n+1];//int[n+1]这里最好使用n+1,不要用int
,不然数组可能会开得太小。(实例:曾开了int
,10个测试点,2个数组太小 RE)

for(i=0;i<n;i++)
cin>>a[i];
//    scanf("%d",&a[i]);

.
.
.
delete[] a;//可有可无,有一次有了,反而编译错误

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  ini 语言 c