【发布时间】:2014-10-20 08:29:49
【问题描述】:
case 1: //Option 1
{
cout<<"Enter Car Brand:"<<endl;
cin>>search_car; //Identify which car brand to be search
search_car.front() = std::toupper( search_car.front() );
for(int x=0; x<cnt; x++) //Loop to last account, by using cnt we can stop when the array is a null
{
if(search_car==car_brand[x])//Detecting which car brand same as user input
{
cout<<"\n\tCar Registration Number:"<<car_num[x]<<endl;
cout<<"\n\tCar Make or Brand:"<<car_brand[x]<<endl;
cout<<"\n\tCar Model:"<<car_model[x]<<endl;
cout<<"\n\tCar Colour:"<<car_colour[x]<<endl;
cout<<"\n\tYear of Manufacturing:"<<car_year[x]<<endl;
cout<<"\n\tEngine Capacity:"<<car_eng_cap[x]<<"cc"<<endl;
cout<<"\n\tTransmission:"<<car_tran[x]<<endl;
cout<<"\n\tCost of Car: RM"<<car_cost[x]<<endl;
}
else
cout<<"No data is founded."<<endl;
break;
}
}
case 2: //Option 2
{
cout<<"Enter Car Model:"<<endl;
cin>>search_car; //Identify which car model to be search
search_car.front() = std::toupper( search_car.front() );
for(int y=0 ; y<cnt ; y++)
{
if(search_car==car_model[y])//Detecting which car model same as user input
{
cout<<"\n\tCar Registration Number:"<<car_num[y]<<endl;
cout<<"\n\tCar Make or Brand:"<<car_brand[y]<<endl;
cout<<"\n\tCar Model:"<<car_model[y]<<endl;
cout<<"\n\tCar Colour:"<<car_colour[y]<<endl;
cout<<"\n\tYear of Manufacturing:"<<car_year[y]<<endl;
cout<<"\n\tEngine Capacity:"<<car_eng_cap[y]<<"cc"<<endl;
cout<<"\n\tTransmission:"<<car_tran[y]<<endl;
cout<<"\n\tCost of Car: RM"<<car_cost[y]<<endl;
}
else
cout<<"No data is founded."<<endl;
break;
}
}
case 3: //Option 3
{
cout<<"Enter Year of Manufacturing:"<<endl;
cin>>search_car;
for(int x=0; x<cnt; x++)
{
if(search_car==car_year[x])//Detecting which car manufacturing year same as user input
{
cout<<"\n\tCar Registration Number:"<<car_num[x]<<endl;
cout<<"\n\tCar Make or Brand:"<<car_brand[x]<<endl;
cout<<"\n\tCar Model:"<<car_model[x]<<endl;
cout<<"\n\tCar Colour:"<<car_colour[x]<<endl;
cout<<"\n\tYear of Manufacturing:"<<car_year[x]<<endl;
cout<<"\n\tEngine Capacity:"<<car_eng_cap[x]<<"cc"<<endl;
cout<<"\n\tTransmission:"<<car_tran[x]<<endl;
cout<<"\n\tCost of Car: RM"<<car_cost[x]<<endl;
}
else
cout<<"No data is founded."<<endl;
break;
}
}
case 4: //Option 4
{
cout<<"Enter Car Price:"<<endl;
cin>>search_car;
for(int x=0 ; x<cnt; x++)
{
if(search_car==car_cost[x])//Detecting which car price same as user input
{
cout<<"\n\tCar Registration Number:"<<car_num[x]<<endl;
cout<<"\n\tCar Make or Brand:"<<car_brand[x]<<endl;
cout<<"\n\tCar Model:"<<car_model[x]<<endl;
cout<<"\n\tCar Colour:"<<car_colour[x]<<endl;
cout<<"\n\tYear of Manufacturing:"<<car_year[x]<<endl;
cout<<"\n\tEngine Capacity:"<<car_eng_cap[x]<<"cc"<<endl;
cout<<"\n\tTransmission:"<<car_tran[x]<<endl;
cout<<"\n\tCost of Car: RM"<<car_cost[x]<<endl;
}
else
cout<<"No data is founded."<<endl;
break;
}
}
case 5: //Option 5
{
cout<<"Operation Canceled."<<endl;
break;
}
好像不管我在option里输入什么数字,输出都会让我输入汽车品牌,在我输入和输入后,它只会弹出我们的第二个选项让我输入汽车型号.. ..似乎开关盒无法正常工作,我该如何解决?
[更新]
这是我想问的另一个问题:
我有这样的代码:
案例1://选项1
{
cout
cin>>car_brand[x];
}
休息;
我要怎么做才能改变输入的汽车品牌第一个字符是大写的?例如,我输入 toyota,输出将变为 Toyota。
【问题讨论】:
-
没有看到您发布的代码正上方的那几行,就无法知道
-
您没有展示最重要的部分:
switch语句是什么,您如何获得该变量? -
case块中的代码不需要大括号。 -
另外
else cout<<"No data is founded."<<endl; break;放错地方了 -
@Barmar 你确实有时需要在
case块中的代码周围加上大括号。尽管在 this 实例中不需要它们。
标签: c++ visual-studio-2010 switch-statement