实验八 c排序算法

时间:2021-08-30 19:51:17

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;
}