运行while的第一个实例

Running first Instance of while

本文关键字:实例 第一个 while 运行      更新时间:2023-10-16

赋值:

写一个无限循环的程序。在循环的每次迭代中,读入用户输入的整数N(声明为int),如果N非负且能被5整除,则显示N/5,否则显示-1。使用三元操作符(?:)来完成此操作。(提示:模数运算符可能有用)

我的解决方案:

#include<iostream>
using namespace std;
int main(){
     int x;
     cin>>x;
     while(1) {
         cin>>x;
         int result;
         cout<<"             "<<endl;
         result = (x>0 & (x%5==0)) ? int(x/5) : -1;
         cout<<result;
     }
}
我能做这道题但是程序的第一次运行没有输出

逐行浏览程序。对于cin>>x,你读一个数字到x,第6行是while (1), 1为真,所以你进入循环。下一个cin>>x将一个数字读入x,覆盖前面的内容。

(x>0 && (x%5==0)) ? int(x/5) : -1; 
     ^^

我认为你打算使用逻辑&&运算符,而不是位&运算符。

此外,您读取x两次并覆盖第一次读取的值。

好的。重要的事情先说。你应该知道c++逻辑与运算符是"&&"而不是"&"(你用的那个)。请看:http://www.cplusplus.com/doc/tutorial/operators/.

提示1:您真的需要while循环上方的单例cin吗?

提示2:要在结果上方打印带有换行符的空行吗?

提示3:您需要打印没有换行符的结果吗?

提示4:您是否打算使用按位&而不是逻辑&& ?

可选

提示1:是否需要按5int划分大小写?