文章
47
粉丝
109
获赞
8
访问
29.5k
#include<stdio.h>
#include<string.h>
int main() {
//strcpy(a,b) 等同于 a = b;
int n;
while (scanf("%d", &n) != EOF) {
char s[105][105];
char ch[105];
for (int i = 0; i < n; i++) {
scanf("%s", &s[i]);//输入字符串
}
for (int i = 0; i < n; i++) {
for (int j = 0; j < n - 1 - i; j++) {
if (strlen(s[j]) > strlen(s[j + 1])) { //先从长度开始比较
strcpy(ch, s[j]);
strcpy(s[j], s[j + 1]);
strcpy(s[j + 1], ch);
}
//长度相同的情况 >0 表示是s[j]>s[j+1]
if (strlen(s[j]) == strlen(s[j + 1]) && strcmp(s[j], s[j + 1]) > 0){
strcpy(ch, s[j]);
strcpy(s[j], s[j + 1]);
strcpy(s[j + 1], ch);
}
}
}
for (int i = 0; i < n; i++) {
printf("%s\n", s[i]);
}
}
return 0;
}
登录后发布评论
暂无评论,来抢沙发