[英]how to find maximum and minimum values of a structure array
我有一个类型为float的结构数组:
students[num].height
其中包含程序中的20个值。 我如何编写函数来查找此结构数组的最大值和最小值?
将float变量max设置为数组第一个元素的height成员,还将float变量min设置为第一个元素的height成员。 循环遍历所有结构。 在循环播放时,如果高度大于max,请将max设置为该数字。 如果高度小于最小值,则将最小值设置为该高度。
// student tStudentsArray[20] = ...
std::max_element(tStudentsArray, tStudentsArray + tNumberOfStudents,
[] (const student& pLeft, const student& pRight) {
return pLeft.height < pRight.height;
});
..任何不包含C ++标准库的C ++类都是有问题的。
是通过函数填充结构,还是已经填充结构?
如果通过函数填充它,则可以保留2个变量max(最初设置为MIN_INT)和min(最初设置为MAX_INT)。
对于每个插入,请检查该值是大于max还是小于min,如果是,则将它们设置为正确。
如果没有通过您的函数来填写,我会附上jonsca的答案。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.