#include
#include
#include
int main()
{
int n,a,s[3];
while(scanf("%d",&n)!=EOF){
getchar();
if(n==0)exit(0);
memset(s,0,sizeof(int)*3);
while(scanf("%d",&a)!=EOF){
if(a>0){s[0]+=1;}
else if(a<0){s[1]+=1;}
else{s[2]+=1;}
}
printf("正数:%d,负数:%d,0:%d",s[0],s[1],s[2]);
}
return 0;
}
修改见注释,供参考;
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
int main()
{
int n,a,s[3];
while(scanf("%d",&n) == 1 && n != 0){ //修改
//getchar(); 修改
//if(n==0)exit(0); //修改
memset(s,0,sizeof(int)*3);
while(n--){ //while(scanf("%d",&a)!=EOF) 修改
scanf("%d", &a);
if(a>0) s[0]++; //修改
else if(a<0) s[1]++; //修改
else s[2]++; //修改
}
printf("正数:%d, 负数:%d, 零:%d\n",s[0],s[1],s[2]);//修改
}
return 0;
}
ctrl+z 终止输入
EOF输入用ctrl+Z