```
#include <stdio.h>

main()
{
    int i,l,t=1,m,a[15]={0};
    for(i=0;i<15;i++)
    {  
        scanf("%d",&a[i]);
    }

    for(i=0;i<15;i++)
    {
        if(a[i]>=3 && a[i]<=8)
        {
            for(l=i+1;l<15;l++)
            {
                if(a[i]>a[l])
                {
                    m=a[i];
                    a[i]=a[l];
                    a[l]=m;
                }
            }
            printf(" No%d \t %d \n",t++,a[i]);
        }
    }
    system("pause");
}

```

In this code in c i want to print the elements of an array in an ascending order but the value of the elements must be bewteen 3 and 8. The results that i get exclude the values over 8 but they include the values under 3.Why does this happen? Thanks in advance.