这道题其实就是考判断语句,对每个条件进行判断,然后分类,其中要注意的就是对于A2要设置一个标志位来决定被加数是否要取相反数,对于A4则是要考虑其数据类型。这个题目还有一个小坑在于格式问题,规定输出的数字由空格隔开,但行末不得有空格!这是要注意的,不让最后就是格式错误。
题目:
格式要求:
样例:
代码:
#include<stdio.h>
int main()
{
int N,i,k=0;
int a[1000];
int A1=0,A2=0,A3=0,A5=0;
float A4 = 0,j=0;
scanf("%d",&N);
for(i=0;i<N;i++)
{
scanf("%d",&a[i]);
if(a[i]%5==0&&a[i]%2==0)
{
A1=A1+a[i];
}
else if(a[i]%5==1)
{
k=k+1;
if(k%2==0)
{
a[i]=-a[i];
}
A2+=a[i];
}
else if(a[i]%5==2)
{
A3=A3+1;
}
else if(a[i]%5==3)
{
j=j+1;
A4+=a[i];
}
else
{
if(a[i]>A5)
{
A5 = a[i];
}
}
}
if(A1==0)
printf("N ");
else
printf("%d ",A1);
if(A2==0)
printf("N ");
else
printf("%d ",A2);
if(A3==0)
printf("N ");
else
printf("%d ",A3);
if(A4==0)
printf("N ");
else
printf("%.1f ",A4/j);
if(A5==0)
printf("N");
else
printf("%d",A5);
return 0;
}
谢谢!