已知道字符串数组如下:(C语言) char *s[]={"man","woman","girl","boy","sister"};(1) 定\x05义一个函数对数组s进行冒泡排序(2)定义一个函数对数组s进行选择排序(3) main()函数体中分别调用定义的两个函数
来源:学生作业帮助网 编辑:作业帮 时间:2024/07/02 00:57:00
![已知道字符串数组如下:(C语言) char *s[]={](/uploads/image/z/7582224-48-4.jpg?t=%E5%B7%B2%E7%9F%A5%E9%81%93%E5%AD%97%E7%AC%A6%E4%B8%B2%E6%95%B0%E7%BB%84%E5%A6%82%E4%B8%8B%EF%BC%9A%28C%E8%AF%AD%E8%A8%80%29+char+%2As%5B%5D%3D%7B%22man%22%2C%22woman%22%2C%22girl%22%2C%22boy%22%2C%22sister%22%7D%3B%281%29+%E5%AE%9A%5Cx05%E4%B9%89%E4%B8%80%E4%B8%AA%E5%87%BD%E6%95%B0%E5%AF%B9%E6%95%B0%E7%BB%84s%E8%BF%9B%E8%A1%8C%E5%86%92%E6%B3%A1%E6%8E%92%E5%BA%8F%282%29%E5%AE%9A%E4%B9%89%E4%B8%80%E4%B8%AA%E5%87%BD%E6%95%B0%E5%AF%B9%E6%95%B0%E7%BB%84s%E8%BF%9B%E8%A1%8C%E9%80%89%E6%8B%A9%E6%8E%92%E5%BA%8F%283%29+main%28%29%E5%87%BD%E6%95%B0%E4%BD%93%E4%B8%AD%E5%88%86%E5%88%AB%E8%B0%83%E7%94%A8%E5%AE%9A%E4%B9%89%E7%9A%84%E4%B8%A4%E4%B8%AA%E5%87%BD%E6%95%B0)
已知道字符串数组如下:(C语言) char *s[]={"man","woman","girl","boy","sister"};(1) 定\x05义一个函数对数组s进行冒泡排序(2)定义一个函数对数组s进行选择排序(3) main()函数体中分别调用定义的两个函数
已知道字符串数组如下:(C语言) char *s[]={"man","woman","girl","boy","sister"};
(1) 定\x05义一个函数对数组s进行冒泡排序
(2)定义一个函数对数组s进行选择排序
(3) main()函数体中分别调用定义的两个函数进行排序,并打印排序结果
已知道字符串数组如下:(C语言) char *s[]={"man","woman","girl","boy","sister"};(1) 定\x05义一个函数对数组s进行冒泡排序(2)定义一个函数对数组s进行选择排序(3) main()函数体中分别调用定义的两个函数
#include <stdio.h>
#include <string.h>
//冒泡排序
void sort1(char *s[],int count)
{
char *ptemp;
int i,j;
for(i=0;i<count-1;i++)
{
for(j=0;j<count-1-i;j++)
{
if(strlen(s[j])>strlen(s[j+1])) //按长度比较的大小
{
ptemp=s[j];
s[j]=s[j+1];
s[j+1]=ptemp;
}
}
}
}
//选择排序
void sort2(char *s[],int count)
{
char *ptemp;
int i,j;
for(i=0;i<count-1;i++)
{
for(j=i+1;j<count;j++)
{
if(strcmp(s[i],s[j])>0)//安字符串大小比较的大小
{
ptemp=s[j];
s[j]=s[i];
s[i]=ptemp;
}
}
}
}
void show(char *s[],int count)
{
int i;
for(i=0;i<count;i++)
{
printf("%s\n",s[i]);
}
}
void main()
{
char *s[]={"man","woman","girl","boy","sister"};
sort1(s,5);
show(s,5);
sort2(s,5);
show(s,5);
}