面试题,小程序,在一个排序完毕的数组中,按顺序插入一个数

#include<stdio.h>//一个已经按照一定顺序(从大到小或者从小到大)排列好的数组
//现在需要插入一个数,并且还是按照之前的顺序
#define N 3
int main(void)
{
    int i,p;
    float a[N+1],x;
    printf("Please input an float type number:\n");
    scanf("%f",&x);
    printf("Please input an float type string:\n");
 for(i=0;i<N;i++)
    scanf("%f",&a[i]);
 for(i=0,p=N;i<N;i++)
 {
   if(x<a[i])
    {
      p=i;
      for(i=N;i>=p;i--)
         a[i]=a[i-1];
      break;
   }
 }
     printf("p is %d\n",p);
 for(i=N-1;i<p;i--)
 {
  a[N]=x;
 }
   a[p]=x;
   for(i=0;i<N+1;i++)
   printf("%.2f  ",a[i]);
    return 0;
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值