我是C ++编程的初学者。在我的班上,我们最近展示了使用函数和参数。我们留下了一个我们应该使用函数的任务,除了唯一的问题是我似乎无法开始。到目前为止我已经编写了两个函数。我的主要功能,要求用户输入。另外一个函数使用此输入来创建一个新的整数,我将在以后需要。我确信我的代码中有几个错误,但是现在我真的只需要知道为什么只有我的main函数才会执行。我一直在寻找几个小时,并且切换周围的东西,只是为了获得除主要运行之外的另一个功能,但是我只运行主函数然后程序将结束。从用户输入数据后,程序将结束。因为我开始了这项任务,所以除了主要之外我还没有能够运行任何其他功能。我正在使用2017年的视觉工作室。抱歉,麻烦。
#include <iostream>
#include <cmath>
#include <string>
using namespace std;
int digits(int zip);
int main() {
int zip = 0;
cout << "Enter zipcode: ";
cin >> zip;
return 0;
}
int digits(int zip){
int d5 = int();
d5 = zip % 10;
cout << "test: " << d5 << endl;
return d5;
}
答案 0 :(得分:2)
您需要调用函数digits
#include <iostream>
#include <cmath>
#include <string>
using namespace std;
int digits(int zip);
int main() {
int zip = 0;
cout << "Enter zipcode: ";
cin >> zip;
int data = digits(zip);
cout<<"test: "<<data<<endl;
return 0;
}
int digits(int zip){
int d5 = int();
d5 = zip % 10;
// cout << "test: " << d5 << endl;
return d5;
}
答案 1 :(得分:0)
C ++查找main函数并执行其中的任何内容。在您的情况下,它会创建一个新变量'zip',要求用户输入,然后将该值插入到zip变量中。然后它返回0并停止运行。 你必须调用int main()中的函数digits()。像这样:
int main() {
int zip = 0;
cout << "Enter zipcode: ";
cin >> zip;
digits(zip);
return 0;
}
int digits(int zip){
int d5 = int();
d5 = zip % 10;
cout << "test: " << d5 << endl;
return d5;
}
另外,请注意,执行digits()函数后,该程序将返回0,而不是以任何方式操纵'd5'变量(由int digits()返回)。
此外,在其他功能中使用任何内容都不是一个好主意。这使得重用该功能变得困难。为了使功能尽可能多样化,请确保它只执行一项任务。在你的情况下,它应该看起来像这样:
int main() {
int zip = 0;
cout << "Enter zipcode: ";
cin >> zip;
cout << "test: " << digits(zip) << endl;
return 0;
}
int digits(int zip){
int d5 = int();
d5 = zip % 10;
return d5;
}
答案 2 :(得分:0)
你需要事先调用函数digits
,否则程序将完全跳过函数,所以上面的代码应该看起来像这样:
#include <iostream>
#include <cmath>
#include <string>
using namespace std;
int digits(int zip);
int main() {
int zip = 0;
cout << "Enter zipcode: ";
cin >> zip;
return 0;
}
int digits(int zip){
int d5 = int();
d5 = zip % 10;
cout << "test: " << d5 << endl;
return d5;
}
如果您希望将d5 = zip % 10;
定义为double或float,则d5
中的旁注也是{{1}}。