2016宁波上市公司名单:我怎么办呀!????????????????!!!!!!

来源:百度文库 编辑:杭州交通信息网 时间:2024/05/09 02:17:09
用C++编写一个程序,原题是这样的:
用new操作为一个包含20个整数的数组分配内存,输入若干个值到数组中,分别统计其中正数和负数的个数后再用delete操作释放内存.
编写程序如下:
#include <iostream.h>
void main()
{
signed int *a[10],i,s=1,b=1;
a[10]=new signed int;
cout<<"enter data:"<<endl;
for(i=0;i<10;i++){
cin>>*a[i];
}
cout<<endl;
for(i=0;i<10;i++){
if(a[i]>0)s++;
if(a[i]<0)b++;}
cout<<"zheng shu "<<s<<" ge"<<endl;
cout<<"fu shu "<<b<<" ge"<<endl;
delete a[10];
}
请问整个程序检查时并没有错,可为什么运行不出来呢?麻烦各位高手了!

cin>>*a[i];这里错了 所以数组没有得到初始化
应为 cin>> a[i];

#include <iostream>
using namespace std;
void main()
{
int *a,i,s=0,b=0;
a=new int[10];
cout<<"enter data:"<<endl;
for(i=0;i<10;i++)
{
cin>>a[i];
}
cout<<endl;
cout << a<<endl;
for(i=0;i<10;i++)
{
if(a[i]>0)s++;
if(a[i]<0)b++;
}
cout<<"zheng shu "<<s<<" ge"<<endl;
cout<<"fu shu "<<b<<" ge"<<endl;
delete a;
}