问答题 1.  阅读以下说明和C语言代码,填写程序中的空缺处。
    【说明】
    函数insertElem的功能是在元素升序排列的数组中加入一个新元素并保持数组元素升序排列的特点。在maln函数中输入若干表示价值的实数,输入为0或负数或实数个数超出限定数量时终止,调用insertElem将价格按升序保存在数组pdata中,最后输出所输入的实数。
    【C语言代码】
    # define ARRSZ 10001
    void insertElem(double arr[],int n,double elem)
    /* arr空间足够大且其元素按照升序排列,将elem插入arr中并保持其升序特点*/
    {int i;
    double tmp;
    if(n==0||elem>=arr[n-1]){______=elem; return;)
    for(i=n-1;i>=0&&elem<arr[i];i --){//查找插入位置并将元素后移
    ______;
    }
    ______=elem;    //将元素放入最终位置
    }
    int main()
    {int idx,n=0;
    Double price, pdata[ARRSZ];
    do    {
    scanf("%lf",&price);
    if(price<=0) ______;
    insertElem(______);//调用insertElem将price的值加入pdata数组
    n++;
    } while(n<ARRSZ);
    for(idx=0;______;idx++)    //按升序输出所输入的实数
    printf("%2lf\t",pdata[idx]);
    return 0;
    }
【正确答案】arr[n]
   arr[i+1]=arr[i]
   arr[i+1]
   break
   pdata,n,price
   idx<n
【答案解析】