数据结构真难嗄 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日

悬赏问题

  • ¥15 kafka 分区副本增加会导致消息丢失或者不可用吗?
  • ¥15 微信公众号自制会员卡没有收款渠道啊
  • ¥15 stable diffusion
  • ¥100 Jenkins自动化部署—悬赏100元
  • ¥15 关于#python#的问题:求帮写python代码
  • ¥20 MATLAB画图图形出现上下震荡的线条
  • ¥15 关于#windows#的问题:怎么用WIN 11系统的电脑 克隆WIN NT3.51-4.0系统的硬盘
  • ¥15 perl MISA分析p3_in脚本出错
  • ¥15 k8s部署jupyterlab,jupyterlab保存不了文件
  • ¥15 ubuntu虚拟机打包apk错误