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

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

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

数组为整型数组。主函数中输入数组元素,以-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日

悬赏问题

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