到底是什么错了啊。〒_〒

#include<stdio.h>
void select_sort(int a[], int len);
int main(void)
{
    int ay[5] = { 2,3536,54,67,3 };
    select_sort(ay,5);
    for (int i = 0; i < 5; i++)
    {
        printf("%-5d", ay[i]);
    }
    return 0;


}
void select_sort(int* a, int len)
{
    int i, j;
    for (i = 0; i < len - 1; i++)
    {
        for (j = i + 1; i < len; j++)
        {
            if (a[i] > a[j])
            {
                int temp = a[i];
                a[i] = a[j];
                a[j] = temp;
            }

        }
    }
}

引发了未经处理的异常:读取访问权限冲突。 a 是 0x20E2112

for (j = i + 1; i < len; j++)
改为
for (j = i + 1; j < len; j++) //i和j搞混了

#include<stdio.h>
void select_sort(int a[], int len);
int main(void)
{
    int ay[5] = { 2,3536,54,67,3 };
    select_sort(ay,5);
    for (int i = 0; i < 5; i++)
    {
        printf("%-5d", ay[i]);
    }
    return 0;
}
void select_sort(int* a, int len)
{
    int i, j;
    for (i = 0; i < len - 1; i++)
    {
        for (j = i + 1; j < len; j++)
        {
            if (a[i] > a[j])
            {
                int temp = a[i];
                a[i] = a[j];
                a[j] = temp;
            }
        }
    }
}