使用指针实现冒泡排序
//使用指针实现冒泡排序
#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
#define MAX 100
//定义调用函数
void mp(int* p, int n)
{
int i,j;
int temp;//定义交换变量
for (i = 0; i < n - 1; i++)//外层循环:一共要进行n-1躺循环
{
for (j = 0; j < n - 1 - i; j++)
{
if (*(p + j) > *(p + j + 1))
{
temp = *(p + j);
*(p + j) = *(p + j + 1);
*(p + j + 1) = temp;
}
}
}
//输出元素
printf("则冒泡排序后的结果为:\n");
for (i = 0; i < n; i++)
{
printf("%3d", *(p+i));
}
}
int main()
{
int a[MAX];
int n;//定义个数
int i;
printf("请输入要比较元素的个数:");
scanf("%d", &n);
printf("请输入元素:");
for (i = 0; i < n; i++)
{
scanf("%d", &a[i]);
}
//调用函数
mp(a, n);
}