首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

C++商品房信息管理有关问题求教.

2012-10-05 
C++商品房信息管理问题求教...........................题目商品房信息管理数据描述:户型楼号楼层面积价格

C++商品房信息管理问题求教...........................
题目商品房信息管理
数据描述:户型 楼号 楼层 面积 价格
程序完成功能:
(1) 浏览数据 (2) 增加数据 (3) 修改数据  
(4) 查询数据(按户型,按面积) (5) 退出
代码如下::
问题是怎么可以把goto loop语句换成其他语句 谢谢
#include<iostream>
#include<stdlib.h>
#include<iomanip>
using namespace std;
class apartment
{
 char model[100];
 int number;
 int floor;
 double size;
 double price;
public:
 void set(char *a,int b,int c,double d,double e); //增加和修改
 void show();
 char *getmodel();
 double getsize();
};

void apartment::set(char *a,int b,int c,double d,double e)
{
  strcpy(model,a);
 number=b;
 floor=c;
 size=d;
 price=e;
}

void apartment::show()
{
 cout<<model<<setw(20-strlen(model))<<number<<setw(15)<<floor<<setw(15)<<size<<setw(15)<<
  price<<endl;
}

char *apartment::getmodel()
{
 return model;
}

double apartment::getsize()
{
 return size;
}


int main()
{
 char a[100];
 int b,c,i,choice,count=0,judge=0;
 double d,e;
 apartment ap[100];
 cout<<"欢迎使用商品房信息管理"<<endl;
loop: cout<<"1 浏览数据 "<<endl;
 cout<<"2 增加数据 "<<endl;
 cout<<"3 修改数据 "<<endl;
 cout<<"4 查询数据(按户型,按面积) "<<endl;
 cout<<"5 退出 "<<endl;
 cout<<"请输入操作序号,按回车确认:"<<endl;
  cin>>choice;
 if(choice==1)
 {
  if(count==0)
  {
  cout<<"还没有信息录入...."<<endl;
  system("pause");
  system("cls");
  goto loop;
  }
  cout<<"商品房信息如下:"<<endl;
  cout<<"户型"<<setw(17)<<"楼号"<<setw(15)<<"楼层"<<setw(15)<<"面积(m*m)"<<setw(15)<<
  "价格"<<endl;
  for(i=0;i<count;i++)
  ap[i].show();
  system("pause");
  system("cls");
  goto loop;

 }

 if(choice==2)
 {
  cout<<"下面开始增加数据:"<<endl;
  cout<<"户型: ";
  cin>>a;
  cout<<"楼号: ";
  cin>>b;
  cout<<"楼层: ";
  cin>>c;
  cout<<"面积: ";
  cin>>d;
  cout<<"价格: ";
  cin>>e;
  ap[count++].set(a,b,c,d,e);
  cout<<"信息录入成功"<<endl;
  system("pause");
  system("cls");
  goto loop;
 }

 if(choice==3)
 {
  char X;
  cout<<"请输入欲修改的户型: ";
  cin>>a;
  for(i=0;i<count;i++)
  {
  if(strcmp(ap[i].getmodel(),a)==0)
  {
  cout<<"此房信息如下:"<<endl;
  cout<<"户型"<<setw(17)<<"楼号"<<setw(15)<<"楼层"<<setw(15)<<"面积(m*m)"<<setw(15)<<
  "价格"<<endl;
  ap[i].show();
  cout<<"确认修改? y(Y)/n(N)...";
  cin>>X;
  if(X=='y'||X=='Y')
  {
  cout<<"下面开始修改数据:"<<endl;
  cout<<"户型: ";


  cin>>a;
  cout<<"楼号: ";
  cin>>b;
  cout<<"楼层: ";
  cin>>c;
  cout<<"面积: ";
  cin>>d;
  cout<<"价格: ";
  cin>>e;
  ap[i].set(a,b,c,d,e);
  cout<<"信息修改成功"<<endl;
  system("pause");
  system("cls");
  goto loop;
  }
  else
  {
  system("pause");
  system("cls");
  goto loop;
  }
  }
  }
  
  cout<<"您查找的商品房不存在"<<endl;
  system("pause");
  system("cls");
  goto loop;
  
 }

 if(choice==4)
 {
  cout<<"1 按户型"<<endl<<"2 按面积"<<endl;
  cin>>choice;
  if(choice==1)
  {
  cout<<"请输入户型..."<<endl;
  cin>>a;
   
  for(i=0;i<count;i++)
  if(strcmp(ap[i].getmodel(),a)==0)
  {
  judge=1;
  cout<<"户型"<<setw(17)<<"楼号"<<setw(15)<<"楼层"<<setw(15)<<"面积(m*m)"<<setw(15)<<
  "价格"<<endl;
  ap[i].show();
  }
  if(judge==0)
  {
  cout<<"您所查找的户型不存在"<<endl;
  judge=0;
  }
  system("pause");
  system("cls");
  goto loop;
  }
  if(choice==2)
  {
  cout<<"请输入面积..."<<endl;
  cin>>d;
   
  for(i=0;i<count;i++)
  if(ap[i].getsize()==d)
  {
  judge=1;
  cout<<"户型"<<setw(17)<<"楼号"<<setw(15)<<"楼层"<<setw(15)<<"面积(m*m)"<<setw(15)<<
  "价格"<<endl;
  ap[i].show();
  }
  if(judge==0)
  {
  cout<<"您所查找的户型不存在"<<endl;
  judge=0;
  }
  system("pause");
  system("cls");
  goto loop;
  } 
 }

 else
  cout<<"感谢使用"<<endl;
 return 0;
 }

[解决办法]
goto语句,真少见啊!可以循环啊。可以加个函数啊,内容就是你的loop。

热点排行