|
发表于 2021-11-28 12:38:42
|
显示全部楼层
本楼为最佳答案
本帖最后由 jackz007 于 2021-11-28 12:42 编辑
- #include <stdio.h>
- #include <string.h>
- int main(void)
- {
- char s[5][80] ;
- int d[5] = {0 , 1 , 2 , 3 , 4} ;
- int i , j , t ;
- for(i = 0 ; i < 5 ; i ++) scanf("%s" , s[i]) ;
- for(i = 0 ; i < 4 ; i ++) {
- for(j = i + 1 ; j && strcmp(s[d[j]] , s[d[j - 1]]) < 0 ; j --) {
- t = d[j - 1] ;
- d[j - 1] = d[j] ;
- d[j] = t ;
- }
- }
- printf("%s" , s[d[0]]) ;
- for(i = 1 ; i < 5 ; i ++) printf("\t%s" , s[d[i]]) ;
- printf("\n") ;
- }
复制代码
编译、运行实况:
- D:\00.Excise\C>g++ -o x x.c
- D:\00.Excise\C>x
- 北京 上海 青岛 厦门 哈尔滨
- 北京 哈尔滨 青岛 上海 厦门
- D:\00.Excise\C>x
- beijing shanghai qindao xiamen haerbin
- beijing haerbin qindao shanghai xiamen
- D:\00.Excise\C>
复制代码 |
|