c语言选择排序算法问题

#我想问下我写的这个代码是不是c语言中的选择排序?

#define _CRT_SECURE_NO_WARNINGS
#include
#include
int main()
{
    int i,j,temp=0;
    int arr[10] = { 0,9,22,15,10,9,16,100,7,6 };
    for (i = 0; i <= 9; i++)
    {
        for (j = i+1; j <= 9; j++)
        {
            if (arr[i] <= arr[j])
            {
                temp = arr[j];
                arr[j] = arr[i];
                arr[i] = temp;
            }

        }
        



    }

    for (i = 0; i <= 9; i++)
    {
        printf("%d\t", arr[i]);
    }

}

#根据一道课后习题写的,没找到答案,排序结果是正确的,但不知道我理解的选择排序法和实际上的是否一致 请指教!

修改如下,供参考:

#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<math.h>
int main()
{
    int i, j, k, temp = 0;   //修改
    int arr[10] = { 0,9,22,15,10,9,16,100,7,6 };
    for (i = 0; i < 9; i++)  //for (i = 0; i <= 9; i++) 修改
    {
        for (j = i + 1, k = i; j < 10; j++) //for (j = i + 1; j <= 9; j++) 修改
        {
            if (arr[k] <= arr[j]) k = j;  //修改
        }
        if (k != i)  //修改
        {
            temp = arr[k];
            arr[k] = arr[i];
            arr[i] = temp;
        }
    }
    for (i = 0; i <= 9; i++)
    {
        printf("%d ", arr[i]);
    }
    return 0;
}