数据结构真难嗄 2022-05-29 10:54 采纳率: 60%
浏览 120
已结题

c语言字符串排序问题

键盘输入三个字符串,编写嵌套函数,对三个字符串进行由小到大排序,并输出排序结果。请问有没有人能帮忙解答一下呢,下面是具体要求
1)在主函数中获取键盘输入三个字符串到 str[3][80]中.
2)将数组名作为参数传递给函数 1,函数 1 的功能是实现排序。
3)在函数 1 中,进行串的两两比较时,将两个串名作为参数传递给函数 2,函数 2 的功能是比较大小,并将小串前置,如 str[0]与 str[1]比较后,str[0]为较小的串。
4)在主函数中按照顺序输出排序结果

  • 写回答

2条回答 默认 最新

  • WaitIKnowYou 2022-05-29 11:45
    关注
    
    #define _CRT_SECURE_NO_WARNINGS
    #include<stdio.h> 
    #include<string.h> 
    
    
    void swap(char* i, char* index)
    {
        char temp[80];
        strcpy(temp, i);
        strcpy(i, index);
        strcpy(index, temp);
    }
    void sort(char str[][80])
    {
        //简单选择排序 
        int i, j, index;
    
        for (i = 0;i < 3;i++)
        {
            int index = i;
            for (j = i + 1;j < 3;j++)
            {
                if (strcmp(str[i], str[j]) > 0)
                    index = j;
            }
            if (i != index)
                swap(str[i], str[index]);
        }
    
    }
    int main()
    {
        char str[3][80];
        int i, j;
        for (i = 0;i < 2;i++)
        {
            printf("输入字符串:");
            scanf("%s", str[i]);
        }
        sort(str);
        for (i = 0;i < 3;i++)
            printf("%s", str[i]);
        return 0;
    }
    

    img

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 6月6日
  • 已采纳回答 5月29日
  • 创建了问题 5月29日

悬赏问题

  • ¥15 metadata提取的PDF元数据,如何转换为一个Excel
  • ¥15 关于arduino编程toCharArray()函数的使用
  • ¥100 vc++混合CEF采用CLR方式编译报错
  • ¥15 coze 的插件输入飞书多维表格 app_token 后一直显示错误,如何解决?
  • ¥15 vite+vue3+plyr播放本地public文件夹下视频无法加载
  • ¥15 c#逐行读取txt文本,但是每一行里面数据之间空格数量不同
  • ¥50 如何openEuler 22.03上安装配置drbd
  • ¥20 ING91680C BLE5.3 芯片怎么实现串口收发数据
  • ¥15 无线连接树莓派,无法执行update,如何解决?(相关搜索:软件下载)
  • ¥15 Windows11, backspace, enter, space键失灵