杀入巅峰 2023-09-13 13:02 采纳率: 77.8%
浏览 16
已结题

插入x,y俩个数后总的4个数储存在了数组中,但每次输出只有2个



#include<stdio.h>
int main()
{
    int flag = 0;
    int x, y, i, j, n;
    int a[100] = {0};
   
    
    scanf("%d", &n);
    for(i=0; i<n; i++)
    {
        scanf("%d", &a[i]);
    }
    scanf("%d %d", &x, &y);

//将x y 有序插入到数组a中
/***********Begin***********/
   while(flag != 2)
   {
       for(int j=0;j<n;j++)
        {   
            if(x > a[n-1])
            {
                a[n] = x;
            }
            if(x == a[j]) 
            {
                break;
            }

            if(x < a[j])      
            {   
                for (int k = n;k > j; k--)
                {
                    a[k+1] = a[k];
                }
                a[j] = x;
                break;             
            }
        }
        flag++;
        if(flag == 1)
        {
            x = y;
        }
   }
/************End************/ 
    for(i=0; i<n; i++)
    {
        printf("%d ", a[i]);
    }
    return 0;
}
  • 写回答

1条回答 默认 最新

  • CSDN-Ada助手 CSDN-AI 官方账号 2023-09-13 14:23
    关注

    【以下回答由 GPT 生成】

    # 输入数组长度
    n = int(input())
    
    # 输入已排序的数组
    a = []
    for i in range(n):
        a.append(int(input()))
    
    # 输入两个需要插入的数
    x, y = input().split()
    x = int(x)
    y = int(y)
    
    # 将x和y有序插入到数组a中
    def insert_sorted(a, x, y):
        # 先插入x
        for i in range(len(a)):
            if x <= a[i]:
                a.insert(i, x)
                break
        else:  # 如果x比数组中所有元素都大,则插入到数组末尾
            a.append(x)
    
        # 再插入y
        for i in range(len(a)):
            if y <= a[i]:
                a.insert(i, y)
                break
        else:  # 如果y比数组中所有元素都大,则插入到数组末尾
            a.append(y)
    
        return a
    
    a = insert_sorted(a, x, y)
    
    # 输出排序后的数组
    for elem in a:
        print(elem, end=" ")
    


    【相关推荐】



    如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 9月29日
  • 已采纳回答 9月21日
  • 创建了问题 9月13日

悬赏问题

  • ¥40 微信小程序 使用vant组件ActionSheet 下拉面板,内容区域滚动会触发。scroll-view自定义下拉刷!即使设置停止下拉刷新也不行。
  • ¥15 专业问题提问,7月5号2点之前
  • ¥15 使用rml 2016.10a数据集做半监督学习的自动调制识别
  • ¥25 使用cube ai 导入onnx模型时报错
  • ¥15 关于#微信小程序#的问题:用一个网页显示所有关联的微信小程序数据,包括每个小程序的用户访问量
  • ¥15 root的安卓12系统上,如何使apk获得root或者高级别的系统权限?
  • ¥20 关于#matlab#的问题:如果用MATLAB函数delayseq可以对分数延时,但是延时后波形较原波形有幅度上的改变
  • ¥15 使用华为ENSP软件模拟实现该实验拓扑
  • ¥15 通过程序读取主板上报税口的数据
  • ¥15 matlab修改为并行