我有一个脚本c ++
但我运行这个脚本
当我编写代码衬衫“GC”或“PR”
时出现此脚本错误但我写代码“A”这个脚本正常工作
为什么?
是否if条件只有1个字符?
这是我的剧本,帮帮我。感谢的
#include<stdio.h>
#include<conio.h>
#include<iostream.h>
main()
{
char code,size,merk[15];
long price=0;
clrscr();
cout <<"\n \t GUCCI : GC";
cout <<"\n \t PRADA : PR \n";
cout <<"\n \t Armani : A";
cout <<"\n";
cout<<"Choose Your Shirt : ";cin>>code;
cout<<"Size : ";cin>>size;
if (code=='GC' || code=='gc')
{
strcpy(merk,"Gucci");
if (size=='S' || size =='s')
price=45000;
else if (size=='L' || size =='l')
price=35000;
else if (size=='M' || size =='m')
price=45000;
else
price=60000;
}
else if (code=='PR' || code=='pr')
{
strcpy(merk,"PRADA");
if (size=='S' || size == 's')
price=65000;
else if (size=='L' || size =='l')
price=75000;
else if (size=='M' || size =='m')
price=85000;
else
price=75000;
}
else if (code=='A' || code=='a')
{
strcpy(merk,"ARMANI");
if (size=='S' || size == 's')
price=75000;
else if (size=='L' || size =='l')
price=95000;
else if (size=='M' || size =='m')
price=45000;
else
price=35000;
}
else
{
cout<<"Wrong Code"<<endl;
}
cout<<"------------------------"<<endl;
cout<<"Merk : "<<merk<<endl;
cout<<"Price : "<<price<<endl;
getch();
}
答案 0 :(得分:2)
code=='GC'
单引号用于单个字符(“GC”不是)。对“字符串”使用双引号(但请记住,您无法将字符串与==
进行比较)...
由于您一次只能阅读一个字符,您希望如何输入“GC”?
答案 1 :(得分:0)
John3136是对的。 您可能只想在输入(“代码”)上使用tolower()代码。 您需要做的就是与小写字母进行比较。 使用switch语句,而不是所有那些if语句,eould 让你的代码更具可读性。
要比较多个字符,请使用字符串,strcmp或stricmp。