开发者社区> 问答> 正文

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

今天又重新看了下之前做的杭电ACM题,遇到一个问题,求大神解决下。我原来是用C++做的,今天我只是把C++改成了C,就出错了,是怎么回事啊!
杭电2008
题目:http://acm.hdu.edu.cn/showproblem.php?pid=2008

#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;
}

展开
收起
a123456678 2016-03-24 11:01:50 1716 0
1 条回答
写回答
取消 提交回答
  •  while(scanf("%d",&n))
    ->
    while(scanf("%d",&n) != EOF)
    
    2019-07-17 19:12:18
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
《0代码搭应用》 立即下载
不止代码 立即下载
低代码开发师(初级)实战教程 立即下载