✿✿323 2022-02-12 16:44 采纳率: 83.3%
浏览 29
已结题

字符一维数组做中间变量使字符串数组做交换,该如何实现呢?


#include  "stdio.h"
#include  "string.h"
void  main()
{
        char  s[5][20]={"ccc","bbb","aaa","fff","ddd"},t[20];
        int  i,j,bz;
        for(i=0;i<=3;i++)
        {
                bz=0;
                for(j=0;j<=3-i;j++)
                /****************/
                    if (stcmp(s[j], s[j + 1]) > 0) {

                    }
                /****************/
                if(bz==0)  break;
        }
        for(i=0;i<=4;i++)
                printf("%s\n",s[i]);
}

两行星号间做交换

  • 写回答

2条回答 默认 最新

  • 谛凌 2022-02-12 17:52
    关注
    #include  "stdio.h"
    #include  "string.h"
    void  main()
    {
            char  s[5][20]={"ccc","bbb","aaa","fff","ddd"},t[20];
            int  i,j,bz;
            for(i=0;i<=3;i++)
            {
                    bz=0;
                    for(j=0;j<=3-i;j++)
                    /****************/
                        if (strcmp(s[j], s[j + 1]) > 0) {
                             strcpy(t, s[j]);
                             strcpy(s[j], s[j+1]);
                             strcpy(s[j+1], t);
                        }
                    /****************/
                    if(bz==0)  break;
            }
            for(i=0;i<=4;i++)
                    printf("%s\n",s[i]);
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 2月20日
  • 已采纳回答 2月12日
  • 创建了问题 2月12日