我看到很多类似的问题或相同的主题,但我的情况没有答案(或者我是愚蠢的,请不要责怪我)。我是一个初学者和自学者,如果我不熟练自己回答这个问题,那就很抱歉。
#include <iostream>
using namespace std;
void Skaiciavimai(double kiek_bulviu, int talkininkai, int & dienos,
int & visi_talkininkai, double & viso_bulviu,
double & vieno_vidurkis);
int main()
{
double atsk = 100, bulves[100], talk[1000], kiek_bulviu = 0, talkininkai = 0;
int dienos = 0, visi_talkininkai = 0;
double viso_bulviu = 0, vieno_vidurkis = 0;
for (int i = 0; i < 1000; i++) {
cin >> bulves[i];
kiek_bulviu = kiek_bulviu + bulves[i];
if (bulves[i] == 0) {
i = 1000;
}
else {
cin >> talk[i];
talkininkai = talkininkai + talk[i];
dienos++;
}
}
void Skaiciavimai(kiek_bulviu, talkininkai, dienos, visi_talkininkai, viso_bulviu, vieno_vidurkis);
cout << dienos << endl;
cout << viso_bulviu;
cout << vieno_vidurkis;
return 0;
}
void Skaiciavimai(double kiek_bulviu, int talkininkai, int & dienos,
int & visi_talkininkai, double & viso_bulviu,
double & vieno_vidurkis) {
visi_talkininkai = talkininkai;
viso_bulviu = kiek_bulviu;
vieno_vidurkis = viso_bulviu / visi_talkininkai;
}
答案 0 :(得分:3)
void Skaiciavimai(kiek_bulviu, talkininkai, dienos, visi_talkininkai, viso_bulviu, vieno_vidurkis);
删除前导void
。您无需指定所调用函数的返回类型。添加返回类型使其成为函数声明。它应该是这样的:
Skaiciavimai(kiek_bulviu, talkininkai, dienos, visi_talkininkai, viso_bulviu, vieno_vidurkis);
编辑:为清楚起见,我注释了最初的例子。
int main()
{
double atsk = 100, bulves[100], talk[1000], kiek_bulviu = 0, talkininkai = 0;
int dienos = 0, visi_talkininkai = 0;
double viso_bulviu = 0, vieno_vidurkis = 0;
for (int i = 0; i < 1000; i++) {
cin >> bulves[i];
kiek_bulviu = kiek_bulviu + bulves[i];
if (bulves[i] == 0) {
i = 1000;
}
else {
cin >> talk[i];
talkininkai = talkininkai + talk[i];
dienos++;
}
}
/*void*/ Skaiciavimai(kiek_bulviu, talkininkai, dienos, visi_talkininkai, viso_bulviu, vieno_vidurkis);
// ^^^^ Remove this void
cout << dienos << endl;
cout << viso_bulviu;
cout << vieno_vidurkis;
return 0;
}