我看你图片写的一共三个,按这个写的
#include <stdio.h>
#include <string.h>
int main() {
char a[3][128]; //定义二维字符数组
char temp[128]; //定义用于交换的字符数组
for(int i=0;i<3;i++){ //循环输入
scanf("%s",a[i]);
}
for(int i=0;i<2;i++){
for(int j=i+1;j<3;j++){
if(strcmp(a[i],a[j])>-1){ //利用已有的函数进行比较a[i]和a[j]的大小,进行交换两个的内容
strcpy(temp,a[i]); //复制a[i]到temp中
strcpy(a[i],a[j]);
strcpy(a[j],temp);
}
}
}
for(int i=0;i<3;i++){ //循环输出
printf("%s\n",a[i]);
}
return 0;
}
字符串排序,参考:
#include <stdio.h>
#include <math.h>
int main()
{
char city[5][30] = {0},p[30];
int i,j;
for(i=0;i<5;i++)
gets(city[i]);
for(i=0;i<4;i++)
for(j=0;j<4-i;j++)
{
if(strcmp(city[j],city[j+1])>0)
{
strcpy(p,city[j]);
strcpy(city[j],city[j+1]);
strcpy(city[j+1],p);
}
}
for(i=0;i<5;i++)
printf("%s\n",city[i]);
return 0;
}