Eajiang 2023-12-21 11:32 采纳率: 50%
浏览 5

C语言数组排序的问题

大家可以帮我看看为啥我的代码输出不了排序结果吗

#include <stdio.h>
int main(void)
{
    int a[10];
    int i, j, m, temp, n;
    printf("输入一个整数n:");
    scanf_s("%d", &n);
    printf("输入%d个整数", n);
    for (i = 0; i < 10; i++)
        scanf_s("%d", a[i]);
    for (i = 0; i < n - 1; i++)
    {
        m = i;
        for (j = i + 1; j < n; j++)
            if (a[j], a[m])
                m = j;
        if (m != i)
        {
            temp = a[i];
            a[i] = a[m];
            a[m] = temp;
        }
    }
    printf("排序结果:");
    for (j = 0; j < n; j++)
        printf("%d,", a[j]);
}

  • 写回答

2条回答 默认 最新

  • 抑郁的代码男孩 2023-12-21 11:38
    关注

    第10行,scanf_s后面没加取地址符
    第15行,条件从逗号表达式改成a[j] < a[m] (如果是升序排序的话)

    评论 编辑记录

报告相同问题?

问题事件

  • 创建了问题 12月21日

悬赏问题

  • ¥15 Opencv(C++)异常
  • ¥15 VScode上配置C语言环境
  • ¥15 汇编语言没有主程序吗?
  • ¥15 这个函数为什么会爆内存
  • ¥15 无法装系统,grub成了顽固拦路虎
  • ¥15 springboot aop 应用启动异常
  • ¥15 matlab有关债券凸性久期的代码
  • ¥15 lvgl v8.2定时器提前到来
  • ¥15 qtcp 发送数据时偶尔会遇到发送数据失败?用的MSVC编译器(标签-qt|关键词-tcp)
  • ¥15 cam_lidar_calibration报错