为了账号安全,请及时绑定邮箱和手机立即绑定

代码好像没有问题,但是说输出错误,各位看看哪里有错吗

https://img1.sycdn.imooc.com//5bc192570001b03313080818.jpg代码如图中::

正在回答

5 回答

你的主函数中,第一次调用getMax(1,2)这里有问题。相当于直接比较的整数1和2的大小。题目的要求是比较数组中任选两个数的大小,如果你的意思是选择数组中的第一个数和第二个数,应该表示为:getMax(numArr[0],numArr[1])

1 回复 有任何疑惑可以回复我~
#1

qq_慕先生620106

前面一堆长篇大论都不着调,就你这靠谱,哈哈
2019-08-27 回复 有任何疑惑可以回复我~

???你这不是要判断最大值,你函数形参直接传一个max是啥意思?提前知道最大值是多少?

1 回复 有任何疑惑可以回复我~

可以参考一下我的代码。

https://img1.sycdn.imooc.com//5c14ca6d0001bd8717501310.jpg

1 回复 有任何疑惑可以回复我~
#1

qq_慕虎1144658

你这代码有问题,比较变量与下一个元素大小 *a+i 代表什么??代表的是第一个值的大小加上i的值,你跟这个比有什么用啊?你要么就把a+1括起来,其实这个程序完全没必要整这么复杂吧
2019-02-27 回复 有任何疑惑可以回复我~

你这个没办法实现输出数组中的最大值   输出的是maxNum和数组中的数中的最大值 不过第一个还是不用理会  这个判卷系统有点垃圾   要取arr[0]和arr[2]才是正确输出   下面是我的代码   作为参考吧

#include <iostream>

using namespace std;

/**

  *函数功能:返回a和b的最大值

  *a和b是两个整数

  */

int getMax(int a, int b)

{

    return a > b ? a : b;

}


/**

  * 函数功能:返回数组中的最大值

  * arr:整型数组

  * count:数组长度

  * 该函数是对上面函数的重载

  */

int getMax(int arr[],int count)

{

    //定义一个变量并获取数组的第一个元素

    int maxNum=arr[0];

for(int i = 1; i < count; i++)

{

        //比较变量与下一个元素的大小

if(arr[i]>maxNum)

{

            //如果数组中的元素比maxNum大,则获取数组中的值

maxNum=arr[i];

}

}

return maxNum;

}


int main(void)

{

    //定义int数组并初始化

int numArr[3] = {3, 8, 6};

    

    //自动调用int getMax(int a, int b)

cout << getMax(numArr[0], numArr[2]) << endl;

    

    //自动调用返回数组中最大值的函数返回数组中的最大值

cout << getMax(numArr,3) << endl;

return 0;

}



3 回复 有任何疑惑可以回复我~

我改了一下数组中的一个数,但是没改之前也是说输出错误的,理论上来说改不改数组里面的书是没有影响的啊

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
C++远征之离港篇
  • 参与学习       122700    人
  • 解答问题       474    个

C++扫清通往面向对象的最后一道障碍,将所有知识点融会贯通

进入课程

代码好像没有问题,但是说输出错误,各位看看哪里有错吗

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信