题解 | #有序序列插入一个数#

有序序列插入一个数

http://www.nowcoder.com/practice/74486aec6fe14d44b509efabf265ee66

#include <stdio.h>

int main() { int n = 0; int arr[51] = {0}; int i = 0; int x = 0; int j = 0;

scanf("%d", &n);
for (i=0; i<n; i++)
{
    scanf("%d", &arr[i]);
}

scanf("%d", &x);
if (n == 1)
{
    if (x > arr[0])
    {
        int tmp = x;
        x = arr[0];
        arr[0] = tmp;
    }
    printf("%d %d", x, arr[0]);
}
else{
for (i=0; i<n+1; i++)
{
    if ((arr[i] >= x && x >= arr[i-1]&& i!=0)||(arr[0]>x&&i==0)||(x>arr[n-1]&&i==n))
    {
        int a = 0;
        int tmp = arr[i];
        arr[i] = x;
        for (j=i+1; j<n+1; j++)
        {
            a = arr[j];
            arr[j] = tmp;
            tmp = a;
        }
        break;
    }
}
for (i=0; i<n+1; i++)
    printf("%d ",arr[i]);
}
return 0;

}

全部评论

相关推荐

06-15 20:57
已编辑
门头沟学院 Java
CARLJOSEPH...:年轻人有傲气很正常,但是建议工作前洗净傲气。 说实在的,什么奖学金什么奖项的都很一般。尊重你的老师,在有时间的时候去上课,真遇到走不开的事,请态度端正地向你的老师说明情况,请求请假。我相信任何一个有师德的老师都会允许的(我的老师就是这样)。
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务