c++ - for循环中的多个条件在c ++中不起作用
问题描述
我正在尝试打印所有出现的偶数,最多为 20。代码在 if 条件下工作正常,但不能在循环中处理多个条件。
#include<iostream>
using namespace std;
int main() {
for(int i = 1; ((i <= 20) && (i % 2 == 0)); i ++)
cout << i << endl;
}
解决方案
你混淆了两个不同的事情,当你想要你的循环停止,当你想要打印一个数字。
在您编写的代码中,您已将“何时要打印数字”条件放在您应该只拥有“何时您希望循环停止”条件的地方。因此,一旦您获得奇数,您的循环就会停止。
你的代码应该是
for (int i = 1; i <= 20; i ++)
if (i % 2 == 0)
cout << i << endl;
推荐阅读
- c# - 在 .NET Framework 中将 Async/await 和 SqlDataReader 与 ExecuteReaderAsync 一起用于 ASMX Web 服务时出错
- angular - Angular 8 语言转换与谷歌 api.english 到印地语转换
- python - 如何修复我的第一个 python 代码?名称错误,未定义类名
- php - 使用 PHP 的 SQL Server 查询总是返回 Null
- javascript - 如果我将线宽设置为 6 以下,Fabric JS 不会让我在 microsoft edge 中画一个点
- javascript - 在Angular中创建和使用自定义原始组件(例如输入,选择)是否是最佳实践
- reactjs - 在 SPA 中的整个用户流程中保持用户身份验证状态是最新的?
- swift - 快速创建和传递闭包
- tensorflow - TensorFlow 内存不足
- c# - Include 中使用的 Lambda 表达式无效。EF6,导航属性