Ex4_1.cpp
上传用户:wuzhousb
上传日期:2022-07-12
资源大小:380k
文件大小:1k
源码类别:

书籍源码

开发平台:

Visual C++

  1. //【例4.1】商品类对象应用实例。
  2. #include<iostream>
  3. #include<iomanip>
  4. #include<cstring>
  5. using namespace std;
  6. class CGoods{
  7. private :
  8. char  Name[21] ;
  9. int   Amount ;
  10. float  Price ;
  11. float Total_value ;
  12. public :
  13. void  RegisterGoods(char[],int,float) ;
  14. void  CountTotal(void) ;
  15. void  GetName(char[]) ;
  16. int  GetAmount(void) ;
  17. float  GetPrice(void) ;
  18. float  GetTotal_value(void) ;
  19. };
  20. void CGoods::RegisterGoods(char name[] , int amount , float price){
  21. strcpy(Name , name) ; Amount=amount ; Price=price ;
  22. }
  23. void CGoods::CountTotal(void){
  24. Total_value = Price*Amount;
  25. }
  26. void CGoods::GetName(char name[]){
  27. strcpy(name , Name);
  28. }
  29. int  CGoods::GetAmount(void){
  30. return(Amount) ;
  31. }
  32. float CGoods::GetPrice(void){
  33. return(Price) ;
  34. }
  35. float CGoods::GetTotal_value(void){
  36. return(Total_value) ;
  37. }
  38. int main( ){
  39. CGoods  car ;
  40. char  str[21] ;
  41. int number ;
  42. float  pr ;
  43. cout<<"请输入汽车型号:" ;
  44. cin.getline(str , 20) ;              //输入串长必须小于20
  45. cout<<"请依次输入汽车数量与单价:" ;
  46. cin>>number>>pr ;
  47. car.RegisterGoods(str , number , pr) ;
  48. car.CountTotal() ;
  49. str[0]='' ;                        //字符串str清零
  50. car.GetName(str) ;                   //string赋值car.Name
  51. cout<<setw(20)<<str<<setw(5)<<car.GetAmount() ;                     //A
  52. cout<<setw(10)<<car.GetPrice()<<setw(20)<<car.GetTotal_value()<<endl ; //B
  53. return 0;
  54. }