0

我正在制作这个程序,它需要我家人的名字并给出他们的星座。而且我遇到了一些困扰我的错误。随机名称仅用于“隐私”。是的,我只是一个初学者,我正在使用基本数组。

#include <iostream>
#include <cmath>
#include <string>


using namespace std;
int main() 
{
    string name;
    string hs[4];
    hs[0] = "Aquarius";
    hs[1] = "Cancer";
    hs[2] = "Leo";  
    hs[3] = "Taurus";  
    cin >> name;
    if name = "Harp"
    {
    cout << hs[0] << endl;
}
if name = "Herp"
{
        cout << hs[1] << endl;
        }
        if name = "Derp"
        {
        cout << hs[2] << endl;
        }
               if name = "Darp"
        {
                cout << hs[3] << endl;       
                }


    cout << "Press Enter To Exit This Program.";
    cin.get();
    return 0;
}

我不断得到这个:预期的`('在“名称”之前任何帮助都会很好。谢谢!

4

3 回答 3

0

检查正确的if语法。- 失踪()

于 2013-03-08T20:18:33.037 回答
0
   if (name == "Harp")

注意(and ),它们不是可选的。也使用==(不是=,它将右侧的值分配给左侧,这里名称将内容更改为“Harp”,然后将其转换为布尔值,...)

于 2013-03-08T20:19:37.637 回答
0

更正的程序是这样的。注意 if 语句的正确语法

#include "stdafx.h"
#include <iostream>
#include <cmath>
#include <string>


using namespace std;
int main() 
{
    string name;
    string hs[4];
    hs[0] = "Aquarius";
    hs[1] = "Cancer";
    hs[2] = "Leo";  
    hs[3] = "Taurus";  
    cin >> name;
    if (name == "Harp")
    {
    cout << hs[0] << endl;
}
if (name == "Herp")
{
        cout << hs[1] << endl;
        }
        if (name == "Derp")
        {
        cout << hs[2] << endl;
        }
               if (name == "Darp")
        {
                cout << hs[3] << endl;       
                }


    cout << "Press Enter To Exit This Program.";
    cin.get();
    return 0;
}
于 2013-03-08T20:22:09.417 回答