k4info
Bạn có muốn phản ứng với tin nhắn này? Vui lòng đăng ký diễn đàn trong một vài cú nhấp chuột hoặc đăng nhập để tiếp tục.

Giúp mình sửa cái này với

Go down

tuyetvoi Giúp mình sửa cái này với

Bài gửi by matsususu Mon Nov 21, 2011 1:49 am

Code:


#include<iostream.h>
#include<conio.h>
#include<stdio.h>
#include<string.h>
#include<iomanip.h>
#include<fstream.h>
#include<windows.h>
using namespace std;
class BangCap{
      private:
              char tenbc[150];
      public:
            //friend class LopHoc;
            void nhapbc();
            void xuatbc();
            friend ostream& operator << (ostream& os, BangCap A);
            friend istream& operator >> (istream& is, BangCap& A);
            };
void BangCap::nhapbc(){
    cout<<"+";
    cin.getline(tenbc,100);
    }
void BangCap::xuatbc()
    {
    cout<<"+"<<tenbc<<"\n";
    }
istream& operator >>(istream& is, BangCap& A){
        is.get(A.tenbc,49);
        return is;
        };
ostream& operator<<(ostream& os, BangCap A){
          os<<A.tenbc<<endl;
          return os;
          }
int main(){
    int m;
    BangCap dsbc[100];
    BangCap A;
    cout<<"Nhap so bang cap ";cin>>m;
    for(int i=0;i<m;i++)
    dsbc[i].nhapbc();
    cout<<"Luu Lai File";
    ofstream f1("myfile.txt");
    f1<<A;
    f1.close();
    cout<<"Lay thong tin tu file \n";
    ifstream f2("myfile.txt");
    BangCap B;
    f2>>B;
    cout<<"Thong tin lay ra tu file\n";
    for(int i=0;i<m;i++)
    dsbc[i].xuatbc();
    f2.close();
    getch();
}
Cho mình hoi sao mà nếu nhập số bằng cấp là 2 thì nó bỏ qua nhập tên bằng cấp đầu tiên? chỉ nhập đc tên bc thứ 2
nếu thêm cin.ignore(); thì nhập đc hết 2 tên nhưng xuất ra mất đi kí tự đầu tiên của tên bc thứ 2, 3......dùng gets vẫn như vậy? ai biết sửa giùm mình. Chân thành cảm ơn.
matsususu
matsususu

Posts : 146
Thanked : 11
Gia Nhập 24/02/2011

Tài Sản
Thú nuôi:

Về Đầu Trang Go down

Về Đầu Trang

- Similar topics

 
Permissions in this forum:
Bạn không có quyền trả lời bài viết