C++ 编程“<=”: 运算符不起任何作用;应输入带副作用的运算符这个怎么解决啊

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C++ 编程“<=”: 运算符不起任何作用;应输入带副作用的运算符这个怎么解决啊相关的知识,希望对你有一定的参考价值。

#include<iostream>
using namespace std;
int sum(int z=0);
int main()

int n;
cout<<"请输入一个整数:";
cin>>n;
sum();
cout<<"sum="<<sum();

int sum(int n)

int i=0,z=0;
for(i=0;i++;i<=n)
z+=n;
return z;


1.编写一个计算1+2+3+…n累加和的函数,在主函数中由键盘输入整数n,调用函数,输出累加和的结果。
哪里出错了

你的C++程序我帮你改好了,你看看吧(改动的地方见注释)

#include<iostream>

using namespace std;

int sum(int z=0);

int main()



 int n;

 cout<<"请输入一个整数:";

 cin>>n;

 //sum();//这里去掉这句

 cout<<"sum="<<sum(n);//这里把sum();改成sum(n);传入参数n

 return 0;//这里加一句,主函数返回0



int sum(int n)



 int i=0,z=0;

 for(i=0;i<=n;i++)//这里把for(i=0;i++;i<=n)改成for(i=0;i<=n;i++)

  z+=i;//这里把z+=n;改成z+=i;

 return z;

参考技术A 把for(i=0;i++;i<=n)改成for(i=0;i<=n;i++)应该就可以了。但还有逻辑错误,应该把下一句z+=n;改成z+=i;……追问

突然明白,,,马虎了

参考技术B 主函数里面sum函数没有输入参数,把n填进去吧 参考技术C

修改:定义int result接收函数结果

#include<iostream>
using namespace std;
int sum(int z=0);
int main()

int n;
cout<<"请输入一个整数:";
cin>>n;
int result = sum(n);
cout<<"sum="<<result;

int sum(int n)

int i=0,z=0;
for(i=0;i++;i<=n)
z+=n;
return z;

追问

还是那个问题,
运算符不起任何作用

以上是关于C++ 编程“<=”: 运算符不起任何作用;应输入带副作用的运算符这个怎么解决啊的主要内容,如果未能解决你的问题,请参考以下文章

模板化一个类,然后重载运算符 (C++)

if/else 语句不起作用 C++ [关闭]

两个参数的运算符重载不起作用[关闭]

在 C++ 中重载运算符 < [重复]

bitmapStrokeString 在 C++ 中不起作用 [关闭]

为啥 `R` 管道运算符 `|>` 在使用 Shiny 的反应式编程中不起作用?