//冒泡排序
#include <stdio.h>
int main()
{
int a[201];
int b;
int i,j;
int temp;
scanf("%d",&b);
for(i = 0;i < b;i ++)
{
scanf("%d",&a[i]);
}
for(i = 0;i < b - 1;i ++)
{
for(j = 0;j < b - 1 - i;j ++)
{
if(a[j] > a[j + 1])
{
temp = a[j];
a[j] = a[j + 1];
a[j + 1] = temp;
}
}
}
for(i = 0;i < b;i ++)
{
printf("%d ",a[i]);
}
}
//选择排序
#include <stdio.h>
int main()
{
int n[201];
int i,k,j;
int t;
int temp;
scanf("%d",&t);
for(i = 0;i < t;i ++)
{
scanf("%d",&n[i]);
}
for(i = 0;i < t - 1;i ++)
{
k = i;
for(j = i + 1;j < t;j ++)
{
if(n[k] > n[j])
{
k = j;
}
}
if(i != k)
{
temp = n[i];
n[i] = n[k];
n[k] = temp;
}
}
for(i = 0;i < t;i ++)
{
printf("%d ",n[i]);
}
}
//冒泡的指针版
#include <stdio.h>
int main()
{
int n[201];
int t;
int temp;
int *p,*q;
p = n;
scanf("%d",&t);
for(p = n;p < n + t;p ++)
{
scanf("%d",p);
}
for(p = n;p < n + t;p ++)
{
for(q = p + 1;q < n + t;q ++)
{
if(*p > *q )
{
temp = *q;
*q = *p;
*p = temp;
}
}
}
for(p = n;p < n + t;p ++)
{
printf("%d ",*p);
}
}
//选择的指针版
#include <stdio.h>
int main()
{
int n[201];
int *p,*q,*k;
int temp;
p = n;
int t;
scanf("%d",&t);
for(p = n;p < n + t;p ++)
{
scanf("%d",p);
}
for(p = n;p < n + t;p ++)
{
k = p;
for(q = p + 1;q < n + t;q ++)
{
if(*k > *q)
{
k = q;
}
}
if(*k != *p)
{
temp = *k;
*k = *p;
*p = temp;
}
}
for(p = n;p < n + t;p ++)
{
printf("%d ",*p);
}
}
冒泡,选择排序 + 指针
最新推荐文章于 2021-09-23 20:18:44 发布