-4
我製作了一個程序,用戶在其中輸入3個名稱,我將按字母順序顯示名稱。 例如,如果用戶輸入 「查理」,「張國榮」和「安迪」 程序將顯示: 安迪,查理,張國榮......按字母順序顯示用戶的輸入名稱
,但我的輸出是:
Enter a name: charlie
Enter a name: leslie
Enter a name: andy
andy leslie charlie
再次另一個輸出:
Enter a name: abc
Enter a name: def
Enter a name: ghi
ghi def abc
我的輸出總是顯示第三階輸入姓名,然後第二個,然後首先它簡化版,不管什麼我已經寫它總是顯示名稱此訂單.... 請幫me.thanku
const int size = 10;
char name1[size];
char name2[size];
char name3[size];
cout << "Enter a name: ";
cin.getline(name1, size);
cout << "Enter a name: ";
cin.getline(name2, size);
cout << "Enter a name: ";
cin.getline(name3, size);
if ("name1" > "name2" && "name1" > "name3")
{
cout << name1 << " ";
if ("name2" > "name3")
{
cout << name2 << " " << name3 << endl;
}
else
{
cout << name3 << " " << name2 << endl;
}
}
else if ("name2" > "name1" && "name2" > "name3")
{
cout << name2 << " ";
if ("name1" > "name3")
{
cout << name1 << " " << name3 << endl;
}
else
{
cout << name3 << " " << name1 << endl;
}
}
else if ("name3" > "name1" && "name3" > "name2")
{
cout << name3 << " ";
if ("name1" > "name2")
{
cout << name1 << " " << name2 << endl;
}
else
{
cout << name2 << " " << name1 << endl;
}
}
else
{
cout << "nothing happened....." << endl;
}
你想'strcmp()'。 –
通過將'name1'放在引號中,您可以將它寫入文字中,而不是將其用作程序變量。 – Galik
如果我的名字長於9個字符會怎麼樣? –