C++函数已返回值但未输出,仅cout可显示结果的问题咨询
问题分析与解决办法
嘿,问题很简单——你写的Area函数确实正确计算并返回了面积,但在main函数里调用它的时候,只是执行了函数,却没有把返回的结果传递给cout来输出!
你看,现在的代码里是这么写的:
cout << "您的房间面积为:"; Area(len, wid);
这里Area(len, wid)会算出结果并返回,但这个返回值没有被任何语句使用,相当于“算出来了但没告诉程序要打印它”,所以控制台只会显示前面的文字,不会出现面积数值。
两种修改方案
方案1:直接在cout中调用函数
把函数调用直接放到cout的输出链里,这样返回值就会被打印出来:
cout << "您的房间面积为:" << Area(len, wid) << endl;
方案2:先把返回值存到变量再输出
如果你需要后续还用到这个面积值,可以先把Area的返回值赋值给你定义的area变量,再输出变量:
area = Area(len, wid); cout << "您的房间面积为:" << area << endl;
修改后的完整代码
这里给你放一份改好的完整代码(用方案1的写法):
#include <iostream> using namespace std; int Area(int x, int y); int main() { int len; int wid; int area; cout << "您好,请输入房间的长度和宽度。" << endl; cin >> len >> wid; // 直接在cout中调用函数输出结果 cout << "您的房间面积为:" << Area(len, wid) << endl; return 0; } int Area(int len, int wid) { int answer = len * wid; return answer; }
这样运行程序的时候,输入长度和宽度后,就能看到计算好的面积啦~
内容的提问来源于stack exchange,提问作者kingofthefranks
相关产品推荐
相关产品推荐

