String 1~5 sorting
• char string1[20] = "abc";
• char string2[20] = "1";
• char string3[20] = "Hello world!"; • char string4[20] = "good";
• char string5[20] = "1500-1234";
求代码、
#include<stdio.h>
#include<string.h>
void main ()
{
char string1[20] = "abc";
char string2[20] = "1";
char string3[20] = "Hello world!";
char string4[20] = "good";
char string5[20] = "1500-1234";
char *p[5],*tp;
int i,j;
p[0]=string1;
p[1]=string2;
p[2]=string3;
p[3]=string4;
p[4]=string5;
for(i=0;i<=3;i++)
{
for(j=i+1;j<=4;j++)
{
if(strlen(p[i])>strlen(p[j]))
{
tp=p[i]; p[i]=p[j]; p[j]=tp;
}
}
}
for(i=0;i<5;i++)
printf("%s\n",p[i]);
}
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int cmp(const void * a, const void * b)
{
return strlen((char *)a) - strlen((char *)b);
}
int main(void)
{
char data[5][20] = { "abc", "1", "Hello world!", "good", "1500-1234" };
qsort(data, 5, sizeof(char[20]), cmp);
int i;
for (i = 0; i < 5; i++)
printf("%s\n", data[i]);
return 0;
}
1
abc
good
1500-1234
Hello world!