简单C语言求大神
ProblemDescription统计给定的n个数中,负数、零和正数的个数。Input输入数据有多组,每组占一行,每行的第一个数是整数n(n<100),表示需要统计的数...
Problem Description
统计给定的n个数中,负数、零和正数的个数。
Input
输入数据有多组,每组占一行,每行的第一个数是整数n(n<100),表示需要统计的数值的个数,然后是n个实数;如果n=0,则表示输入结束,该行不做处理。
Output
对于每组输入数据,输出一行a,b和c,分别表示给定的数据中负数、零和正数的个数。
Sample Input
6 0 1 2 3 -1 0
5 1 2 3 4 0.5
0
Sample Output
1 2 3
0 0 5
我的代码
#include<stdio.h>
int main()
{
int a,b,c,d,e,f;
while(scanf("%d",&a)!=EOF)
{ d=0;
e=0;
f=0;
{
if (a=0)
break;
else
for(b=1;b<=a;b++)
{ scanf("%d",&c);
if(c<0)
{
d=d+1;}
else if(c=0)
{
e=e+1;}
else if(c>0)
{ f=f+1;
}
}
}
printf("%d %d %d\n",d,e,f);
}
return 0;
}
为什么输出都是0 0 0,而且是输出的数字的行数。。。求指导。。。 展开
统计给定的n个数中,负数、零和正数的个数。
Input
输入数据有多组,每组占一行,每行的第一个数是整数n(n<100),表示需要统计的数值的个数,然后是n个实数;如果n=0,则表示输入结束,该行不做处理。
Output
对于每组输入数据,输出一行a,b和c,分别表示给定的数据中负数、零和正数的个数。
Sample Input
6 0 1 2 3 -1 0
5 1 2 3 4 0.5
0
Sample Output
1 2 3
0 0 5
我的代码
#include<stdio.h>
int main()
{
int a,b,c,d,e,f;
while(scanf("%d",&a)!=EOF)
{ d=0;
e=0;
f=0;
{
if (a=0)
break;
else
for(b=1;b<=a;b++)
{ scanf("%d",&c);
if(c<0)
{
d=d+1;}
else if(c=0)
{
e=e+1;}
else if(c>0)
{ f=f+1;
}
}
}
printf("%d %d %d\n",d,e,f);
}
return 0;
}
为什么输出都是0 0 0,而且是输出的数字的行数。。。求指导。。。 展开
2个回答
展开全部
#include<stdio.h>
int main()
{
int a,b,d,e,f; //
while(scanf("%d",&a)!=EOF)
{
d=0;
e=0;
f=0;
if (a==0) //比较用==
break;
else
for(b=1;b<=a;b++)
{
double c;//输入的是实数,包括小数,要用double
scanf("%lf",&c); //double 对应%lf
if(c<0)
{
d=d+1;
}
else if(c==0)//同上
{
e=e+1;
}
else if(c>0)
{
f=f+1;
}
}
printf("%d %d %d\n",d,e,f);
}
return 0;
}
展开全部
#include<stdio.h>
int main()
{
int a,b,c,d,e,f;
while(scanf("%d",&a)!=EOF)
{ d=0;
e=0;
f=0;
{
if (a==0) //这里错了,要改成这样,按你写的那就成了赋值了。
break;
else
for(b=1;b<=a;b++)
{ scanf("%d",&c);
if(c<0)
{
d=d+1;}
else if(c=0)
{
e=e+1;}
else if(c>0)
{ f=f+1;
}
}
}
printf("%d %d %d\n",d,e,f);
}
return 0;
}
如若还有问题,可继续追问。
int main()
{
int a,b,c,d,e,f;
while(scanf("%d",&a)!=EOF)
{ d=0;
e=0;
f=0;
{
if (a==0) //这里错了,要改成这样,按你写的那就成了赋值了。
break;
else
for(b=1;b<=a;b++)
{ scanf("%d",&c);
if(c<0)
{
d=d+1;}
else if(c=0)
{
e=e+1;}
else if(c>0)
{ f=f+1;
}
}
}
printf("%d %d %d\n",d,e,f);
}
return 0;
}
如若还有问题,可继续追问。
追问
还是错的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询