这是正常的,输出结果为6 7 8 9 10
#include<stdio.h>
void f2(double a[],int n)
{
double pingjun;
int zonghe=0,i,k;
for(k=0; k<=10; k++)
{
zonghe+=a[k];
}
pingjun=(zonghe/10*0.1+zonghe%10);
for(i=0; i<=10; i++)
{
if(a[i]>=pingjun)
{
printf("%.f\n",a[i]);
}
}
}
int main()
{
double a[]= {1,2,3,4,5,6,7,8,9,10};
f2(a,10);
}
然后将%.f改成%d,输出就成了10 0 0 0 0
不理解,这是怎么回事,求指教・_・