测试点5、6:if分支的条件处理,尤其是最后的else
#include<stdio.h>
int main() {
int A[6]= {0}; //下标1~5 A1~A5
int flag=1;//A2交错求和的标志
int isN= false;//A1 A2 是否出现
int cnt=0;//A4被 5 除后余 3 的数字的个数
int N,n;
scanf("%d",&N);
for(int i=0; i<N; ++i) {
scanf("%d",&n);
if(n%10 ==0 )
A[1]+=n;
else if(n%5==1) {
A[2]+=flag*n;
flag*=-1;
isN = true;
} else if(n%5==2)
A[3]++;
else if(n%5==3) {
A[4]+=n;
cnt++;
} else if(n%5==4){
if(n>A[5]) A[5]=n;
}
}
for(int i=1; i<6; ++i) {
if(i==2)
if(isN) printf("%d",A[i]);
else printf("N");
if(i==4)
if(A[i]>0) printf("%.1f",(double)A[i]/cnt);
else printf("N");
if(i==1 || i==3 || i==5)
if(A[i]>0) printf("%d",A[i]);
else printf("N");
if(i<5) printf(" ");
}
return 0;
}