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

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日

悬赏问题

  • ¥20 docker里部署springboot项目,访问不到扬声器
  • ¥15 netty整合springboot之后自动重连失效
  • ¥15 悬赏!微信开发者工具报错,求帮改
  • ¥20 wireshark抓不到vlan
  • ¥20 关于#stm32#的问题:需要指导自动酸碱滴定仪的原理图程序代码及仿真
  • ¥20 设计一款异域新娘的视频相亲软件需要哪些技术支持
  • ¥15 stata安慰剂检验作图但是真实值不出现在图上
  • ¥15 c程序不知道为什么得不到结果
  • ¥15 键盘指令混乱情况下的启动盘系统重装
  • ¥40 复杂的限制性的商函数处理