题解 | #公务员面试#

有序序列插入一个数

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

#include<stdio.h> int main() {

int N = 0;
scanf("%d", &N);
int nums[20] = { 0 };

for (int i = 1; i <= N; i++)//将待加入新数的一组数放在sums的第二个到第N个位置
{
    int n = 0;
    scanf("%d", &n);
    nums[i] = n;
}

scanf("%d", &nums[0]);//将新数sums的第一个位置
for (int i = 0; i < N; i++)//将一个数与后面N个数比大小,比后面大就换下位置
{

    if (nums[i] > nums[i + 1])
    {
        int tmp = nums[i];
        nums[i] = nums[i + 1];
        nums[i + 1] = tmp;
    }
    else                 //若比后面小了,则此位置为该插入的位置
        break;
}
for (int m = 0; m <= N; m++)//将新数组按顺序输出
{
    printf("%d ", nums[m]);
}

return 0;

}

全部评论

相关推荐

不愿透露姓名的神秘牛友
05-09 15:06
求好运眷顾🙏🏻:翻译:面试前没盘点好hc一下面太多了,现在在排序回去等通知
点赞 评论 收藏
分享
04-21 16:05
已编辑
山西大学 Java
不吃压力👿:我和你简历差不多,好多看到28就不回复了,回复的基本是全栈或低代码
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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