本来是很简单的一道水题http://acm.hdu.edu.cn/showproblem.php?pid=2008。但很无奈提交了N多次都是WA,卡了很久一直找不到自己哪里出错了。。
附上自己原来的代码:
#include <iostream>
using namespace std;
int main()
{
int n;
int negetive,positive,zero;
while(cin>>n)
{
if(n==0) break;
negetive=positive =zero = 0;
double *array;
array = (double *)malloc(n);
for(int i = 0;i < n;i++)
{
cin>>array[i];
if(array[i] < 0) negetive++;
else if(array[i] == 0) zero++;
else positive++;
}
cout<<negetive<<" "<<zero<<" "<<positive<<endl;
free(array);
}
return 0;
}
后来我发现我将array直接写成double array[100]就可以了,应该是题目:要求了输入的数目要小于100,用动态存储不符合题意.