为什么运行结果老是有几个数的小数点后面变成00了?

为什么运行结果老是有几个数的小数点后面变成00了?

#include
int main()
{    int N=6;
    int i,j,t;
    double a[N]; 
    printf("请输入%d个数:\n",N);
    for(i=0;iscanf("%lf",&a[i]);
    printf("\n"); 
    for(i=0;ifor(j=0;j-1;j++)
    if(a[j]>a[j+1])
    {
        t=a[j];
        a[j]=a[j+1];
        a[j+1]=t;    }
        printf("排序之后:\n");
        for(i=0;iprintf("%f ",a[i]);
        }
}

请输入6个数:
56.84
68.23
12.40
15.38
49.62
43.78

排序之后:
12.40 15.38 43.78 49.00 56.00 68.00

仅供参考,望采纳~


int t;//改成float t;

排序临时保存到 t时,由于t是整形int,只取整数部分