拾柒Mandy 2022-11-16 11:58 采纳率: 100%
浏览 5
已结题

想用递归的方式处理:比较二维数组不同行的字符串大小,并选出字符串最大的那一行

想用递归的方式处理:比较二维数组不同行的字符串大小,并选出字符串最大的那一行
请问:本题可以用递归解决吗?可以的话帮忙看一下代码
以下为我的代码与结果

img


以下为代码报错异常界面

img

  • 写回答

1条回答 默认 最新

  • 我系真滴菜 2022-11-21 17:59
    关注

    仅供参考

    #include<stdio.h>
    #include<string.h>
    #include<stdlib.h>
    
    #define N 3
    #define M 20
    
    void my_strcmp(int line, char *string, char arr[N][M])
    {
        // 第一次进入比较第0行和第1行
        if(line == 0)
        {
            if(strcmp(arr[0], arr[1]) > 0)
            {
                strcpy(string, arr[0]);
            }
            else
            {
                strcpy(string, arr[1]);
            }
        }
        else
        {
            // 第二次递归进来比较上一次的最大行和当前行
            if(strcmp(arr[line], string) > 0)
            {
                strcpy(string, arr[line]);
            }
        }
       
        if(line == (N - 1))
        {
            // 比较到最后一行返回
            return;
        }
        else
        {
            // 行数+1递归比较
            if (line == 0)
            {
                // 第一次进来的时候比较了两行
                my_strcmp(line + 2, string, arr);
            }
            else
            {
                // 后面再进来一次比较一行
                my_strcmp(line + 1, string, arr);
            }
        }
    }
    int main()
    {
        char arr[N][M] = {0};
        char string[20] = {0};
        printf("Input Three Line:\n");
        int i = 0;
        for (i = 0;i < 3;i++)
        {
            gets(arr[i]);
        }
        my_strcmp(0, string, arr);
        printf("the largest string is:%s\n", string);
        system("pause");
    }
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 11月29日
  • 已采纳回答 11月21日
  • 创建了问题 11月16日

悬赏问题

  • ¥100 set_link_state
  • ¥15 虚幻5 UE美术毛发渲染
  • ¥15 CVRP 图论 物流运输优化
  • ¥15 Tableau online 嵌入ppt失败
  • ¥100 支付宝网页转账系统不识别账号
  • ¥15 基于单片机的靶位控制系统
  • ¥15 真我手机蓝牙传输进度消息被关闭了,怎么打开?(关键词-消息通知)
  • ¥15 装 pytorch 的时候出了好多问题,遇到这种情况怎么处理?
  • ¥20 IOS游览器某宝手机网页版自动立即购买JavaScript脚本
  • ¥15 手机接入宽带网线,如何释放宽带全部速度