EC_RTE0C 2022-11-04 00:59 采纳率: 100%
浏览 19
已结题

四个整数由小到大排列并输出怎么用数组解

输入四个整数,按照从小到大排列。
#pragma warning(disable:4996)
#include<stdio.h>
int main(void)
{
    long long A[10];
    long long B[10];
    int count, count_outside, count_inside,geted;
    geted = 0;
    printf("Please enter four integers:");
    for (count = 0; count <= 3; count++)
        scanf("%lld", &A[count]);
    for(count_outside=0;count_outside <= 3;count_outside++)
    {
        for(count_inside=0;count_inside <= 3;count_inside++)
        {
            for (count = 1; (count_inside + count) <= 3;count ++)
            {
                if (A[count_inside] >= A[count_inside + count])
                    geted = count_inside + count;
            }
        }

        B[count_outside] = A[geted];
        A[geted] = 100000000+count_outside;
    }

    for (count = 0; count <= 3; count++)
        printf("%lld ",B[count]);

    return 0;
}

Please enter to integers:1 2 3 4

1 4 3 100000001
D:\AHPU教学\P99-5\x64\Debug\P99-5.exe (进程 10768)已退出,代码为 0。
按任意键关闭此窗口

想用两个数组去解,先把四个整数放进数组A中,然后找到最小的值,记下其地址,然后赋给数组B的第一个值,再将该地址的数据赋值极大,依次循环再找第二小的,赋给B的第二个值

最后按顺序输出数组B的值。

求解释一下这个程序哪里出错了,怎么改。
  • 写回答

2条回答 默认 最新

  • 於黾 2022-11-04 08:21
    关注

    不用两个数组,一个数组就好了,冒泡排序没学过吗,没学过随便搜一搜
    你这两个数组来回折腾是把问题复杂化了
    要坚持用最简单的办法解决问题,代码越多越容易出bug,不要刻意写没有实际作用的代码

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 11月16日
  • 已采纳回答 11月8日
  • 修改了问题 11月4日
  • 创建了问题 11月4日

悬赏问题

  • ¥15 虚幻5 UE美术毛发渲染
  • ¥15 CVRP 图论 物流运输优化
  • ¥15 Tableau online 嵌入ppt失败
  • ¥100 支付宝网页转账系统不识别账号
  • ¥15 基于单片机的靶位控制系统
  • ¥15 真我手机蓝牙传输进度消息被关闭了,怎么打开?(关键词-消息通知)
  • ¥15 装 pytorch 的时候出了好多问题,遇到这种情况怎么处理?
  • ¥20 IOS游览器某宝手机网页版自动立即购买JavaScript脚本
  • ¥15 手机接入宽带网线,如何释放宽带全部速度
  • ¥30 关于#r语言#的问题:如何对R语言中mfgarch包中构建的garch-midas模型进行样本内长期波动率预测和样本外长期波动率预测