m0_63366309 2022-04-30 14:27 采纳率: 61.5%
浏览 227
已结题

编写递归函数,求数组元素的最大值。

问题遇到的现象和发生背景

数组为整型数组。主函数中输入数组元素,以-9999为结束符,-9999不会是数组的元素。数组元素个数不超过100。 输入:若干整数,以空格或换行隔开,以-9999结束。-9999不是数组元素

问题相关代码,请勿粘贴截图
#include <stdio.h>
int f(int a[],int n){  
    int max = a[0];
    for(int k=1;k<n;k++){
        if(a[k]>max){
            max = a[k];
        }
    }
    return max;
}
int    main()
{
    int a[200];int i=0,j=0; 
    while(1){
        scanf("%d",&a[i++]);
        char c=getchar();
        j++;
        if(c=='\n'){
            break;
        }
   }
    printf("%d", f(a, j-1));
    return 0;
}

运行结果及报错内容

#编程语言: C
状态帮助,状态 (新窗口): 多个状态
评测时间: 2022年04月 30日 星期六 14:17 (14 秒之前)
信息: 用例1: 运行超时(此程序运行得太久了。)
用例2: 运行超时(此程序运行得太久了。)
用例3: 运行超时(此程序运行得太久了。)
用例4: 运行超时(此程序运行得太久了。)
用例5: Accepted
用例6: 运行超时(此程序运行得太久了。)
统计: 编译错误: 2
多个状态: 3
成功率: 0%
输出: testcase 0:
testcase 1:
testcase 2:
testcase 3:
testcase 4: 1567854
testcase 5:
自己在devC++上运行没问题,提交到moodle上显示这样

我的解答思路和尝试过的方法
我想要达到的结果
  • 写回答

4条回答 默认 最新

  • wander303 2022-04-30 14:49
    关注

    写一个可以实现你要的功能行吗?没看懂你题目的意思

    #include <stdio.h>
    int GetMax(int *arry,int len);
    int main()
    {
        int a[101]={0},num=1;
        while(a[num-1]!=-9999)
        {
            scanf("%d",&a[num]);
            num++;
        }
        printf("Max=%d",GetMax(a+1,num-1));
        return 0;
    }
    
    int GetMax(int *arry,int len)
    {
        int i,max;
        max=arry[0];
        for(i=1;i<len;i++)
            if(max<arry[i])
                max=arry[i];
        return max;
    }
    
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(3条)

报告相同问题?

问题事件

  • 系统已结题 5月8日
  • 已采纳回答 4月30日
  • 创建了问题 4月30日

悬赏问题

  • ¥20 关于#r语言#rda分析作图的问题,请各位专家解答!
  • ¥50 找回 股票行情系统的资源问题
  • ¥15 gwas 分析-plink 检查人口分层出现下面问题
  • ¥15 关于#matlab#的问题:需要 MATLAB 运行程序,对比四个多址通信方式(TDMA,FDMA,CDMA,OFDMA)的抗噪声性能
  • ¥15 有没有复现过PFENet的,如何解决?
  • ¥15 vue3使用swiper轮播图循环失败
  • ¥15 FDMA,OFDMA,TDMA 和 CDMA 系统容量对比仿真
  • ¥15 图神经网络的入侵检测
  • ¥15 工业数据采集技术+存储架构推荐
  • ¥15 GPT-SOVITS如何训练少数民族语言支持合成语音