题解 | #记负均正#
记负均正
https://www.nowcoder.com/practice/6abde6ffcc354ea1a8333836bd6876b8
#include <stdio.h>
int main() {
    int a, b;
    while (scanf("%d", &a) != EOF) { 
        int num[a+1],cnt=0,n=0;
        float sum;
        for(int i=0;i<a;i++)
        {
            scanf("%d",&num[i]);
        }
        for(int i=0;i<a;i++)
        {
            if(num[i]<0)
            {
                cnt++;
            }
            if(num[i]>0)
            {
                n++;
                sum+=num[i];
            }
 
        }
        if(n==0)
        {
            printf("%d %d.0\n", cnt,0);
            return 0;
        }
        printf("%d %.1f\n", cnt,sum/n);
    }
    return 0;
}
这里需要注意c语言的四舍五入的地方,如果用来求和的变量sum是int类型的,有小数是就会舍弃掉小数部分,若是float类型的,则会根据四舍五入的方法进行小数位保留。