有人可以为我修改整个代码吗?我修改自己但仍然有错误,我想使用功能,并将其称为打印主 #包括 #包括 #包括 使用namespace std;
int addition(int a=(rand()%99),int b=(rand()%99) {
int r;
r=a+b;
return r;
}
int main() {
int print, a, b;
print = addition(a, b);
cout << "this is result of addition" << print;
}
答案 0 :(得分:3)
这里有两个问题:
首先,您不要调用srand
,这是设置随机种子所必需的(通常是通过srand(time(nullptr)
)。
其次,行print= int addition(int a,int b);
写错了。假设您要使用默认参数,它应该是print = addition();
,因为您没有声明该函数,而是调用它。
这将使主要功能如下:
int main() {
srand(time(nullptr));
int print;
print= int addition();
cout<<"this is result of addition"<<print;
return 0;
}
编辑:这假设您实际上想要您的函数具有随机默认参数的行为。这本身似乎是一个糟糕的设计决策,发送调用者生成的随机数可能会更好。这将产生结果函数:
int main() {
srand(time(nullptr));
int a = rand()%99, b = rand()%99;
int print;
print= int addition(a, b);
cout<<"this is result of addition"<<print;
return 0;
}
另请注意,rand()%99将返回[0,98]范围内的值。
答案 1 :(得分:0)
这一行:
print = int addition(int a, int b);
是胡说八道。你可能想要:
print = addition();
答案 2 :(得分:0)
你有一些语法错误..你的主要变化是:
int print, a, b;
std::srand(std::time(0));
print = addition(a, b);
cout << "this is result of addition" << print;
无论如何,你可以删除&#39; a&#39;和&#39; b&#39;变量,因为你没有在代码中使用它们。这样,您必须在没有任何参数的情况下调用add:
print = addition();