C语言输出不大于k的。

Input some integers and k, and output odd numbers(increasing order), sum, average (rounding)of all numbers that are not larger than k.
例:输入:11 20 91 111 1 100
输出:1 11 91 103 34

img

#include<stdio.h>
#include<ctype.h>
int main()
{
    int a[1000],b[1000];
    char c;
    int i = 0,k,j=0,s=0,t;
    int n = 0;
    double ave;
    while ((c = getchar()) != '\n')
    {
        if (isdigit(c))
        {
            ungetc(c, stdin);//将c送回输入流
            scanf("%d", &a[n++]);
        }

    }
    k=a[n-1];
    n--;
     for (i = 0; i < n; i++)
     {
         
         if(a[i]%2==1&&a[i]<=k){
             b[j++]=a[i];s+=a[i];
         }
     }
     
       for (i = 0; i < j; i++)   {
           for (k = 0; k < j; k++)   {
           if(b[k]>b[i]){
               t=b[k];
               b[k]=b[i];
               b[i]=t;
           }
        }
       }
       for (i = 0; i < j; i++) 
       printf("%d ",b[i]);
        printf("%d ",s);
         printf("%.0f ",s/j*1.0);
         return 0;

}