在 C/C++ 中进行原型设计

Prototyping in C/C++

本文关键字:原型 C++      更新时间:2023-10-16

我正在尝试创建原型并编写名为 average 的函数。

我不确定如何创建它,是什么让错误太少的参数无法正常工作.....在拉兹洛和彼得拉

平均接收一系列学生考试成绩。

平均值

计算学生分数的平均值

如何正确创建原型?

#include <iostream>
using namespace std;
double average( int array[], int items); // function declaration (prototype)
int main()
{
    int lazlo[] = {90, 80, 85, 75, 65, -10};
    int pietra[] = { 100, 89, 83, 96, 98, 72, 78, -1};
    int num;
    num = average( lazlo );
    cout << "lazlo took " << num << "tests. Average: " << lazlo[ num ] << endl;
    num = average( pietra );
    cout << "pietra took " << num << "test. Average: " << pietra[ num ] << endl;
    // function call to average
}

您已经声明了average接受两个参数:数组(指向第一个元素的指针)和数组中的项数。 问题是,当你调用average时,你只传递它一个参数:数组(它衰减成指向其第一个元素的指针)。 你错过了items论点。

您的呼叫应如下所示:

num = average(lazlo, 6);

之后打印的消息也不正确。 average返回平均值,因此num数组中数字的平均值,而不是项目数。 此外lazlo[num]将是一个错误,因为num将被64,并且您的lazlo数组中没有第 64 项。

您需要有一个与原型关联的实际函数才能使代码正常工作。 您可以在主函数下方添加以下内容:

double average( int array[], int items) {
  // write your averaging code here
}

完成平均函数的编码后,请确保调用它,使输入和数据类型的数量与原型匹配:

num = average(lazlo, 6);
num = average(pietra, 8);