实验八 c排序算法
8.1
#include<stdio.h>
int main()
{
int a[5],i,j,k,t,z;
//输入5个元素进入数组
for(i=0;i<5;i++)
scanf("%d",&a[i]);
//冒泡排序算法
for(j=0;j<5;j++)
for(k=j;k<5;k++)
{
if(a[j]<a[k])
{
t=a[j];
a[j]=a[k];
a[k]=t;
}
}
for(i=0;i<5;i++)
printf("%d ",a[i]);
printf("\n");
return 0;
}
8.2
#include<stdio.h>
#include<string.h>
int main()
{
char a[40],t;
int i,j,k;
gets(a); //输入字符串
i=strlen(a); //获取字符串长度,方便进行排序
//冒泡排序算法
for(j=0;j<i;j++)
for(k=j;k<i;k++)
{
if(a[j]>a[k])
{
t=a[j];
a[j]=a[k];
a[k]=t;
}
}
puts(a); //输出字符串
printf("\n");
return 0;
}
8.3
#include<stdio.h>
#include<string.h>
int main()
{
char a[5][20],b[40]; //舍友为四个,第五个内存作为交换中介
int i,j,k;
for(i=0;i<4;i++)
gets(a[i]);
//冒泡排序算法
for(j=0;j<4;j++)
for(k=j;k<4;k++)
{
if(strcmp(a[j],a[k])>0)
{
strcpy(a[4],a[j]);
strcpy(a[j],a[k]);
strcpy(a[k],a[4]);
}
}
for(i=0;i<4;i++)
puts(a[i]);
return 0;
}