c++ - 尝试检查输入的文本与我自己的自定义答案
问题描述
这是我试图拼凑的东西,不幸的是它没有按照我的意愿去做。我希望它做的是检查输入的文本与我认为正确的几个单词。因此,例如,如果我希望唯一正确的答案是“谢谢”或“请”,我将如何让程序检查用户输入的单词是“谢谢”还是“请”?
我有一种感觉,我不能只写B == 'funs
等等。
请帮帮我:
#include <iostream>
using namespace std;
int main ()
{
string B;
for (;;)
{cout << "enter text here" << '\n' ;
cin >> B ;
if (B == 'fUNS'|| B == 'funs' || B == 'funzies')
{
cout << "correct!!!!!!" << endl;
break;
}
else
{
cout << "sorry, please try again" << endl;
continue;
}
}
return 0;
}
解决方案
与某些使用'
或"
包围字符序列的语言不同,会产生非常不同的结果。单引号定义单个字符文字,例如:
char a = 'A';
您可以使用多个字符来定义整数的值(尽管这是非标准的):
int a = 'ABCD';
双引号定义了一个字符串文字,它是数组中的一系列字符:
const char str[5] = "ABCD";
请注意,文字末尾有一个隐藏的空字符,这就是它有 5 个元素而不是 4 个元素的原因。字符串文字可以与 进行比较和赋值std::string
:
std::string test( "ABCD" );
std::cout << test == "ABCD";
test = "EFGH";
std::cout << test == "ABCD";
推荐阅读
- java - 在 android 中使用 facebook 登录后无法获取 facebook 用户个人资料
- c++ - 我已经写了一个代码直接从数组创建最大堆到一个创建的虚拟数组但是输出是错误的,有人可以指出错误
- rest - 使用 Github REST API 将数据附加到现有文件而不替换
- javascript - 我们如何在 React 类组件状态下访问本地 JSON 文件数据
- minio - 如何更改 MinIO 中的存储桶名称?
- android - Android BLE App 只能订阅 1 个 BLE 设备的特征通知
- xml - 使用 xslt 合并/连接 xml 中属性的值
- json - 解析复杂的json而不用flutter键
- for-loop - 在 for 循环中多久计算一次条件?
- c# - 将存储库注入授权过滤器 C# .NET API