Little fool 2021-09-13 17:29 采纳率: 57.1%
浏览 36
已采纳

将多个字符串按字母顺序由小到大的输出


#include <stdio.h>
#include <string.h>


int main() 
{
    char sort(char* name[], int n);
    char print(char* name[], int n);
    char* name[] = { "Follow me","BASIC","Great Wall","FORTRAN","Computer design" };
    int n = 5;
    sort(name, n);
    print(name, n);


    
    
    
    
    
    
    
    
    
    
    
    return 0;

}

char sort(char* name[], int n)
{
    char* temp;
    int i, j,k;
    for (i = 0; i < n - 1; i++)
    {
        k = i;

        for (j = i + 1; j < n; j++)
        {
            if (strcmp(name[k], name[j]) > 0) k = j;
        }
        if (k != i)
        {
            temp = name[i]; name[i] = name[k]; name[k] = temp;

        }

    }
    return 0;

}

char print(char* name[], int n)
{
    int i;
    for (i = 0; i < n; i++)
    {
        printf_s("%s\n", name[i]);

    }
    return 0;

}

  • 写回答

1条回答 默认 最新

  • baidu_30233079 2021-09-13 17:35
    关注

    不知道你要怎么排序,但strcmp是不能这样用的strcmp(name[k], name[j]),strcmp是比较字符串的,你比较的是两个字符,可以直接比大小的 if(name[k] >name[j])

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 已采纳回答 10月5日
  • 创建了问题 9月13日

悬赏问题

  • ¥50 yalmip+Gurobi
  • ¥20 win10修改放大文本以及缩放与布局后蓝屏无法正常进入桌面
  • ¥15 angular开发过程中,想要读取模型文件,即图1的335行,会报404错误(如图2)。但我的springboot里配置了静态资源文件,如图3。且在该地址下我有模型文件如图4,请问该问题该如何解决呢?
  • ¥15 itunes恢复数据最后一步发生错误
  • ¥15 关于#windows#的问题:2024年5月15日的win11更新后资源管理器没有地址栏了顶部的地址栏和文件搜索都消失了
  • ¥100 H5网页如何调用微信扫一扫功能?
  • ¥15 讲解电路图,付费求解
  • ¥15 有偿请教计算电磁学的问题涉及到空间中时域UTD和FDTD算法结合的
  • ¥15 vite打包后,页面出现h.createElement is not a function,但本地运行正常
  • ¥15 Java,消息推送配置