和记负均正1一样的方法。
#include"stdio.h" #include"string.h" int main(void) { int num, a1 = 0, a2 = 0; double avg = 0; while (scanf("%d", &num) != EOF) { if (num > 0) { a1++; avg = (avg * (a1 - 1) + num) / a1; } else if (num < 0) { a2 ++; } } printf("%d\n%.1lf", a2, avg); }