请问这种是不是标记位方法排序
#include <stdio.h>void bubble_sort(int *arr,int n)
{
int i,j,f;
int tmp;
for(i = 0;i < n-1;i++)
{
f=1;
for(j = 0;j < n - i - 1;j++)
{
if(arr[j] > arr[j+1])
{
tmp = arr[j];
arr[j] = arr[j+1];
arr[j + 1] = tmp;
f=0;
}
}
if(1==f)
{
printf("排序的趟数为:%d \n",i);
break;
}
}
return;
}
void print_array(int *arr,int n)
{
int i;
for(i = 0;i < n;i++)
printf("%d\t",arr[i]);
printf("\n");
}
#define N 10
int main()
{
int i;
int arr[N];
printf("Enter the elements of the array.\n");
for(i = 0;i < N;i++)
scanf("%d",&arr[i]);
printf("Original array:\n");
print_array(arr,N);
bubble_sort(arr,N);
printf("After bubble sort:\n");
print_array(arr,N);
bubble_sort(arr,N);
return 0;
}