为啥等于0和小于的个数的结果是错的,但大于零的个数结果是对的

#include<stdio.h>
int a=0,b=0,c=0;
int panduan(int s[])
{
int i;
for(i=0;i<10;i++)
{
if(s[i]>0)
a++;
else if(s[i]==0)
b++;
else
c++;
}
return a;
return b;
return c;
}
void main()
{
int i;
int shuzu[10];
for(i=0;i<10;i++)
scanf("%d",&shuzu[i]);
printf("大于零的个数:%d,等于零的个数:%d,小于零的个数:%d\n",panduan(shuzu));
}

你题目的解答代码如下:

#include <stdio.h>
int a = 0, b = 0, c = 0;
void panduan(int s[])
{
    int i;
    for (i = 0; i < 10; i++)
    {
        if (s[i] > 0)
            a++;
        else if (s[i] == 0)
            b++;
        else
            c++;
    }
}
void main()
{
    int i;
    int shuzu[10];
    for (i = 0; i < 10; i++)
        scanf("%d", &shuzu[i]);
    panduan(shuzu);
    printf("大于零的个数:%d,等于零的个数:%d,小于零的个数:%d\n", a,b,c);
}

img

如有帮助,请点击我的回答下方的【采纳该答案】按钮帮忙采纳下,谢谢!

img