gpt4 book ai didi

c++ - 检查数组元素中的所有数字是否为0或1 [c++]

转载 作者:行者123 更新时间:2023-12-03 07:09:12 25 4
gpt4 key购买 nike

我需要检查数组中一个元素中的所有数字是否为0或1。
我有此功能:

bool checkIfBin(int okt) {
while (okt > 0)
{
int digit = okt % 10;

if (digit > 1)
return false;
okt /= 10;
}

return true;
}
并调用此函数如下所示:
for (int j=0; j < 4; j++) {
cout << "Enter" << j+1 << " octet in binary system: ";

if (checkIfBin(okt[j]) == true)
cin >> okt[j];
else
break;
}
问题是-当函数返回false时,它不会阻止程序循环。我已经调试了函数,并且看起来工作正常,但是我只是在学习,所以我做错了。没有收到任何错误。
我不知道问题出在哪里

最佳答案

问题源于您在阅读输入之前先检查输入的事实。

for (int j = 0; j < 4; j++) 
{
cout << "Enter" << j+1 << " octet in binary system: ";

cin >> okt[j];

if (!checkIfBin(okt[j]))
break;
}
应该工作得很漂亮。

关于c++ - 检查数组元素中的所有数字是否为0或1 [c++],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65018509/

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