当前位置: 首页 > 知识库问答 >
问题:

货币转换器C++给出括号错误[关闭]

狄彬彬
2023-03-14

下面是我的代码:

#include"std_lib_facilities.h"

int main()
{
    cout << "Which currency do you wanna exchange for, $? €? or ¥?:\n";

    string currency;
    string dollars;
    string euros;
    string yen;

    char $;
    char €;
    char ¥;
    
    if (cin >> $);
        cout << "You have chosen dollars.\n";
        cout << "Please enter your amount:\n";
        int amount;
        cin >> amount;
        cout << "Your amount is:" << amount*153 << "PKR" << endl;
    
 keep_window_open();
 return 0;

}

我试着做一个货币转换器,但我的代码直到美元不能运行,所以我还没有写欧元或日元。谢谢你的回复。

共有1个答案

左丘烨烁
2023-03-14

首先,不要使用这些符号作为变量名,因为它们不是ASCII字符,可能会被弄乱。

其次,if(cin>>$);并没有做您认为它做的事情。它所做的所有工作都是向$变量中读取一些内容,并且不管cin实际读取了什么内容都要继续,因为if语句以分号结尾。之后的代码将被执行,而不管cin实际读取了什么。相反,你应该做

if (condition) {
    thing to execute if condition is true
}

注意花括号的使用。

第三,这不是检查输入字符串是否与美元符号匹配的方法。相反,您应该做的是将输入读入一个变量,然后将该变量与货币符号进行比较。

 类似资料:
  • 本文向大家介绍C# .net实现货币转换示例,包括了C# .net实现货币转换示例的使用技巧和注意事项,需要的朋友参考一下 本文所述C# .net实现货币转换示例主要利用string.format 和cultureInfo 来进行转换。分享给大家供大家参考之用。具体方法如下: 主要实现代码如下: 希望本文所述对大家的C#程序设计有所帮助

  • 我正在兑换货币,遇到了一个奇怪的四舍五入问题。以下是缩写代码: 以下是这些值(所有值都在“快速监视”窗口中验证过): 是Double类型 是类型字符串 是可为空的十进制类型 中的值为: 中的值为: 为什么在语句中四舍五入到1.37,而不是在下面完全相同的计算中四舍五入?我甚至把货币支票复制到第二个任务中,以确保这不会影响事情。如果想要精确,是否必须在语句之外进行计算?

  • 当我按下按钮时,应用程序会崩溃。每个转换“国名”功能都是一个按钮。我会在评论中发布错误。提前道谢。

  • 在我们继续之前,我们需要先来知道“菲亚特”或“菲亚特货币”的含义。 菲亚特货币由政府宣布为其控制的领土内的法定货币。仅因政府监管或法律而具有价值的菲亚特货币不受黄金或白银等实物商品的支持。法定货币的价值来自供需关系和发行政府的稳定性,而不是支持它的商品的价值。它基于经济的信念和信誉。大多数现代纸币都是法定货币。 每个加密货币的新手都想知道如何兑现比特币或从比特币中提取到法定货币(美元,欧元,印度卢

  • 问题内容: 我正在使用我给定的语言环境获取自定义货币格式。但是,这始终包含我不需要的货币符号,我只想要给定语言环境的正确货币数字格式而没有货币符号。 做一个抛出一个异常.. 问题答案: 以下作品。这有点丑陋,但可以履行合同: 您还可以从货币格式中获取模式,删除货币符号,然后从新模式中重构新格式:

  • Woocommerce对中文有那么一点支持,至少货币中可以找到我们的Chinese Yuan。不过讽刺的是,当你选择了人民币作为默认货币符号时,前台显示的确是英镑符号。 Note:该错误已经在Woocommerce 1.6.3版中修复,请升级到最新版本 为什么中文符号错误 这是个很小的错误,不知道为什么这么优秀的插件会犯这种简单的错误。 在woocommerce-core-functions.ph