gpt4 book ai didi

c++ - 只返回 x=a 或 'start' 变量的第一个值

转载 作者:行者123 更新时间:2023-11-28 01:57:38 25 4
gpt4 key购买 nike

#include <iostream>
using namespace std;
int sumTo(int a, int b);


int main()
{
int start;
int end;

cout << "Enter one number " << endl;
cin >> start;
cout << "The second number " << endl;
cin >> end;

int total = sumTo(start, end);


cout << "The sum of the integers btween these 2 numbers is " <<total<<endl ;

return 0;

}
int sumTo(int a, int b)
{
int sum = 0;
for (int x = a; x <= b; x++)
{

sum += x;
cout << sum << endl;
return sum;
}
}

你好,这个需要找到两个输入数字之间所有数字的总和。现在它只返回第一个输入数字不知道为什么?

最佳答案

您的代码的问题在于 return sum; 已置于 for 循环内。这将导致 for 循环只运行一次,因为该函数已经返回了 sum 的值,即 a

int sumTo(int a, int b)
{
int sum = 0;
for (int x = a; x <= b; x++)
{

sum += x;
cout << sum << endl;
return sum; // Here is your problem.
}
}

你的函数其实应该是

int sumTo(int a, int b)
{
int sum = 0;
for (int x = a; x <= b; x++)
{

sum += x;
cout << sum << endl;
}
return sum; // This line should be placed here instead.
}

关于c++ - 只返回 x=a 或 'start' 变量的第一个值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40602152/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com