C语言 写一个函数 用 选择法 对输入的字符串按由大到小顺序排列 求大神给个答案吧!急急急!

2024-11-30 12:49:38
推荐回答(4个)
回答(1):

#include "stdio.h"
#inlcude "string.h"
int main(void){
char stringArray[100][256],temp[256];
int n,i,j,selected;
printf("请输入待排序的字符串的个数:");
scanf("%d",&n);
printf("请输入各字符串(每个占一行):\n");
for(i=0;i scanf("%s",stringArray[i]);
for(i=0;i selected=i;
for(j=i+1;j if(strcmp(stringArray[selected],stringArray[j])<0)
selected=j;
}
if(selected!=i){
strcpy(temp,stringArray[selected]);
strcpy(stringArray[selected],stringArray[i]);
strcpy(stringArray[i],temp);
}
}
printf("排序后:\n");
for(i=0;i printf("%s\n",stringArray[i]);
}

回答(2):

用 strcmp(char* str1, char* str2); 这个函数用来比较就可以了

回答(3):

#include "stdio.h"
#include "string.h"
void sort(char *a,int &n)
{
int i,j;
char t;
for(i=0;i for(j=i+1;j {
if(a[i] {
t=a[i];
a[i]=a[j];
a[j]=t;
}
}
for(i=0;i printf("%c ",a[i]);
printf("\n");

}
void main()
{
int m;
char s[10]="abcdefghr";
m=strlen(s);
sort(s,m);
}

回答(4):

不会