把我原来做的杭电AC代码改成C竟然出错了是怎么回事啊

今天又重新看了下之前做的杭电ACM题,遇到一个问题,求大神解决下。我原来是用C++做的,今天我只是把C++改成了C,就出错了,是怎么回事啊!

杭电2008
题目:http://acm.hdu.edu.cn/showproblem.php?pid=2008

C

#include
int main()
{
int n;
while(scanf("%d",&n))
{
if(n==0)
break;
double a[n];
int q=0,w=0,e=0;
for(int i=0;i {
scanf("%d",&a[i]);
if(a[i]>0)
q++;
if(a[i]==0)
w++;
if(a[i]<0)
e++;
}
printf("%d %d %d\n",e,w,q);
}
return 0;
}

C++

#include
using namespace std;
int main()
{
int n;
while(cin>>n)
{
if(n==0)
break;
double a[n];
int q=0,w=0,e=0;
for(int i=0;i {
cin>>a[i];
if(a[i]>0)
q++;
if(a[i]==0)
w++;
if(a[i]<0)
e++;
}
cout<<e<<" "<<w<<" "<<q<<endl;
}
return 0;
}

查看全部
heuguangxu
Guanngxu
2016/04/08 13:42
  • c++
  • c
  • 杭电
  • 点赞
  • 收藏
  • 回答
    私信
满意答案
查看全部

1个回复