提供自查出錯代碼題,另求maxNum為何最后獲取為3.
#include <iostream>
using namespace std;
/**
? *函數(shù)功能:返回a和b的最大值
? *a和b是兩個整數(shù)
? */
int getMax(int a, int b)
{
? ? return a > b ? a : b;
}
/**
? * 函數(shù)功能:返回數(shù)組中的最大值
? * arr:整型數(shù)組
? * count:數(shù)組長度
? * 該函數(shù)是對上面函數(shù)的重載
? */
int getMax(int *arr,int count)
{
? ? //定義一個變量并獲取數(shù)組的第一個元素
? ? int maxNum= arr[0];
for(int i = 1; i < count; i++)
{
? ? ? ? //比較變量與下一個元素的大小
if(maxNum <arr[i])
{
? ? ? ? ? ? //如果數(shù)組中的元素比maxNum大,則獲取數(shù)組中的值
int maxNum=arr[i];
}
}
return maxNum;
}
int main(void)
{
? ? //定義int數(shù)組并初始化
int numArr[3] = {3, 8, 6};
? ??
? ? //自動調(diào)用int getMax(int a, int b)
cout << getMax(numArr[0], numArr[2]) << endl;
? ??
? ? //自動調(diào)用返回數(shù)組中最大值的函數(shù)返回數(shù)組中的最大值
cout << getMax(numArr,3) << endl;
return 0;
}
2015-09-28
數(shù)組最大值的判斷里面別用int?maxNum=arr[i];直接maxNum=arr[i];因為這個int 了作用域就在判斷內(nèi)。當跳出循環(huán)后輸出的是本來Arr【0】的值了
2015-05-23
*arr指向的是數(shù)組的第一的元素
2015-05-23
#include <iostream>
using namespace std;
/**
? *函數(shù)功能:返回a和b的最大值
? *a和b是兩個整數(shù)
? */
int getMax(int a, int b)
{
? ? return a > b ? a : b;
}
/**
? * 函數(shù)功能:返回數(shù)組中的最大值
? * arr:整型數(shù)組
? * count:數(shù)組長度
? * 該函數(shù)是對上面函數(shù)的重載
? */
int getMax(int arr[],int count)
{
? ? //定義一個變量并獲取數(shù)組的第一個元素
? ? int maxNum=arr[0];
for(int i = 1; i < count; i++)
{
? ? ? ? //比較變量與下一個元素的大小
if(maxNum < arr[i])
{
? ? ? ? ? ? //如果數(shù)組中的元素比maxNum大,則獲取數(shù)組中的值
maxNum=arr[i];
}
}
return maxNum;
}
int main(void)
{
? ? //定義int數(shù)組并初始化
int numArr[3] = {3, 8, 6};
? ??
? ? //自動調(diào)用int getMax(int a, int b)
cout << getMax(numArr[0], numArr[2]) << endl;
? ??
? ? //自動調(diào)用返回數(shù)組中最大值的函數(shù)返回數(shù)組中的最大值
cout << getMax(numArr,3) << endl;
return 0;
}
2015-05-13
沒人回答?