【发布时间】:2021-12-27 23:10:19
【问题描述】:
我想计算链表中元素的平均值:
.h
class List
{
public:
List() { head = NULL; }
void insertNode(int);//inserare nod la sfarsitul unei liste
void printList();//afisare lista
void deleteNode(int);
void medie(float);
.cpp
void List::medie(float) {
int count = 0;
int sum = 0;
int media = 0;
Node* temp3 = head;
while (temp3 != NULL) {
count++;
sum += temp3->val;
temp3 = temp3->next;
}
media = (double)sum / count;
return media;
}
我收到了这个错误:
返回值类型与函数类型不匹配
我不知道如何修复它。
【问题讨论】:
-
你声明了一个没有返回值的函数,那么你想用
return media;做什么? -
我猜你还没有了解到这段代码中的许多
voids 都是返回类型。您承诺返回void类型,然后尝试返回int。 -
@my_name 也不使用函数参数。为什么会出现?
-
此外,此代码会带来许多错误。
head是什么?Node是什么?val是什么?这不是minimal reproducible example。 -
无论您是想练习自建数据类型还是正在为实际应用程序寻找解决方案:不要滚动您自己的容器,使用标准容器——然后学习所有内容有必要了解
<algorithm>...——此外,您的代码迟早将被来自不同国家/地区的人阅读。英语是标识符和 cmets 的最佳选择。
标签: c++ linked-list average singly-linked-list function-definition