- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我是一名尝试学习 C++ 的自学开发人员,我在谷歌上找到了这个练习,并为其编写了代码,尽管我的所有条件都是正确的,但它行不通,当我检查他们的答案时,我发现这行代码- if (!(cin >> guess)).老实说,我看不出相关性,我不知道为什么它让我的循环不起作用。这是我的代码:
int main(int argc, char* argv[])
{
int nUserRandNum = 0;
int randomNumber=0;
srand (time(NULL));
randomNumber = rand() % 100 + 1;
printf("Please enter a random number between 1 - 99 \n");
scanf("%d", &nUserRandNum);
do
{
if (randomNumber < nUserRandNum)
{
printf("Try to go a little higher than \n", nUserRandNum);
}
else
{
printf("You might want to go a little lower than \n", nUserRandNum);
}
}
while (randomNumber != nUserRandNum);
printf("You got it!!!");
system("Pause");
return 0;
}
当我检查他们的答案时:
int random_number, guess;
// Initialize random seed.
srand (time(NULL));
// Generate random number between 1 and 100
random_number = rand() % 100 + 1;
cout << "Guess our number (1 to 100) ";
cin>>guess;
do
{
if (!(cin >> guess))
{
cout << "Please enter only numbers" << endl;
}
else
{
if (random_number < guess)
cout << "The secret number is lower than " << guess << endl;
else if (random_number > guess)
cout << "The secret number is higher than " << guess << endl;
}
} while (random_number != guess);
cout << "Congratulations!" << endl;
if 语句做什么 {if (!(cin >> guess)) }
?还有其他原因导致我的循环不起作用吗?
最佳答案
scanf
和 cin >>
之间的区别在这里不相关,这不是它工作的原因。
这是你拥有的:
scanf("%d", &nUserRandNum);
do
{
... print ...
}
while (randomNumber != nUserRandNum);
您的 scanf
在循环之外。因此,当满足 do
...while
条件时,用户已经输入的相同数字将再次被检查。
这需要在循环体内,像这样:
do
{
scanf("%d", &nUserRandNum);
... print ...
}
while (randomNumber != nUserRandNum);
从 cin
读取输入而不是使用 scanf
可能是个好主意,因为它不太容易出错。 (尽管您展示的代码仍然能够做到这一点。)
检查一个数字是否被成功读取可能也是一个好主意。当用户输入随机垃圾时,您不应将其视为用户输入了数字。
但这些都不是问题的原因。
关于c++ - if (!(cin >> variableName)) 在此循环中的相关性是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43502977/
这两种语法是否相同:`${variableName}` 和 {variableName} 最佳答案 不。第一个是 JavaScript 的 template literals 根据问题的标签,我假设上
在我的 Xcode Apple 模板中,managedObjectContext 在 AppDelegate.m 中合成如下: @synthesize managedObjectContext = _
Perl 中的 my ($variableName) 和 my $variableName 有什么区别?括号有什么作用? 最佳答案 重要的效果是在声明变量的同时初始化变量: my ($a) = @b;
当您想要初始化参数并且想要分配其中之一时,构造函数中的 super(variable-name); 和 super.variableName = Something; 之间有什么区别它们是父类的变量吗
class Simple { string *data ; //some functions and declaration of some variable,const, d
给定 c++ 关键字 decltype 并用代码示例进行说明: int main(){ int variableName = 0; sizeof(variableName) == si
所以我有一个非常奇怪的问题,在 JavaScript 中调用 console.log 实际上是打印出标签的内容,标签的 id 属性与我传入的变量的名称相同. 这是我的代码:
const data = variableName[0] 有更好的写法吗?我的意思是 variableName[0]。我知道数据放在索引 0 中,但是写一个数字看起来并不专业(至少对我来说),所以如果
这个问题已经有答案了: Why would a JavaScript variable start with a dollar sign? [duplicate] (16 个回答) 已关闭 9 年前。
我在尝试更新特定行的数据库时遇到一些问题,我收到错误消息必须声明标量变量“@lvl”。不太确定我应该做什么。我需要在我的 SQL 语句中声明值吗? private void button1_Click
我是一名尝试学习 C++ 的自学开发人员,我在谷歌上找到了这个练习,并为其编写了代码,尽管我的所有条件都是正确的,但它行不通,当我检查他们的答案时,我发现这行代码- if (!(cin >> gues
我想知道@variablename和variablename之间有什么区别。所有的帮助将不胜感激。 最佳答案 variablename 局部变量 局部变量在存储过程中声明,并且仅在声明它们的 BEGI
我目前正在制作一个表单,该表单接收数据并将其输出到表中,将数据插入表单并按提交按钮后,我收到以下错误: Notice: Undefined property: stdClass::$memberID
当我在 javascript 方法的括号内声明变量时,我会为函数对象提供一个有趣的补充。但是,我实际上无法在函数对象中找到结果逻辑。 [].forEach(towel = function(){con
在 C++ 中,有时会定义一个变量,但不会使用它。这是一个示例 - 用于 COM_INTERFACE_ENTRY_FUNC_BLIND 的函数ATL 宏: HRESULT WINAPI blindQu
我在网上看到了许多使用它的示例脚本。最近,我在 automating TFS 的脚本中看到了它。 : [string] $fields = "Title=$($taskTitle);Descripti
我正在使用 JS、Angular 和 Meteor 来开发一个使用 Youtube api 的 Web 应用程序。在我的 Controller 之一的构造函数中,我按照 youtube api 流程创
我正在使用 React 路由器通过 URL 参数传递 Id 并设置我的变量,如 let { posterId } = useParams(); 这似乎按预期工作,因为我可以在 JSX 中很好地写出它
我在文档中找不到有关此表达式的任何信息。 Ehternaut Re-entrancy task上有如下代码. function withdraw(uint _amount) public { if
我在文档中找不到有关此表达式的任何信息。 Ehternaut Re-entrancy task上有如下代码. function withdraw(uint _amount) public { if
我是一名优秀的程序员,十分优秀!