Chủ đề: van de ve Code
-
11-06-2014, 04:31 PM #1
Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
van de ve Code
#include <iostream.h>
#include <iomanip.h>
#include <fstream.h>
#include <stdlib.h>
#include <stdio.h>
#include <conio.h>
#include <string.h>
#include <ctype.h>
struct Sv {
char *hoten;
int tuoi;
double diem;
};
class Sinhvien {
int sosv;
Sv x;
char fname[30];
static int size;
public:
Sinhvien(char *fn);
void tao();
void bosung();
void xemsua();
};
int Sinhvien::size = sizeof(Sv);
Sinhvien::Sinhvien(char *fn)
{
strcpy(fname, fn) ;
fstream f;
f.open(fname, ios::in | ios::ate | ios::binary);
if (!f.good) sosv = 0;
else {
sosv = f.tellg() / size;
}
}
void Sinhvien::tao()
{
fstream f;
f.open(fname, ios:ut | ios::noreplace | ios::binary);
if (!f.good()) {
cout << "danh sach da co. Co tao lai (C/K) ?";
char traloi = getch();
if (toupper(traloi) == 'C') return;
else {
f.close() ;
f.open(fname, ios:ut | ios::trunc | ios::binary);
}
}
sosv = 0
while (1) {
cout << "
Sinh viên th?: " << sosv+1;
cout << "
H? tên: "; cin.ignore(); cin.getline(x.hoten);
if (x.hoten[0] == 0) break;
cout << "
Tu?i: "; cin >> x.tuoi;
cout << "
Ði?m: "; cin >> x.diem;
f.write((char*)(&x), size);
sosv++;
}
f.close();
}
void Sinhvien::bosung()
{
fstream f;
f.open(fname, ios:ut | ios::app | ios::binary);
if (!f.good()) {
cout << "danh sach chua co. Tao moi (C/K) ?";
char traloi = getch();
if (toupper(traloi) == 'C') return;
else {
f.close() ;
f.open(fname, ios:ut | ios::binary);
}
}
int stt = 0
while (1) {
cout << "
B? sung sinh viên th?: " << stt+1;
cout << "
H? tên: "; cin.ignore(); cin.getline(x.hoten);
if (x.hoten[0] == 0) break;
cout << "
Tu?i: "; cin >> x.tuoi;
cout << "
Ði?m: "; cin >> x.diem;
f.write((char*)(&x), size);
stt++;
}
sosv += stt;
f.close();
}
void Sinhvien::xemsua()
{
fstream f;
int ch;
f.open(fname, ios:ut | ios::app | ios::binary);
if (!f.good()) {
cout << "danh sach chua co";
getch(); return;
}
cout << "
Danh sách sinh viên" << endl;
int stt ;
while (1) {
cout << "
C?n xem (sua) sinh viên th? (0: d?ng): " ;
cin >> stt;
if (stt < 1 || stt > sosv) break;
f.seekg((stt-1) * size, ios::beg);
f.read((char*)(&x), size);
cout << "
H? tên: " << x.hoten;
cout << "
Tu?i: " << x.tuoi;
cout << "
Ði?m: " << x.diem;
cout << "Có s?a không (C/K) ?";
cin >> traloi;
if (toupper(traloi) == 'C') {
f.seekg(-size, ios::cur);
cout << "
H? tên: "; cin.ignore(); cin.getline(x.hoten);
cout << "
Tu?i: "; cin >> x.tuoi;
cout << "
Ði?m: "; cin >> x.diem;
f.write((char*)(&x), size);
}
}
f.close();
}
void main()
{
int chon;
Sinhvien SV("DSSV") ;
while (1) {
clrscr();
cout << "
1: T?o danh sách sinh viên";
cout << "
2: B? sung danh sách";
cout << "
3: Xem – s?a danh sách";
cout << "
0: K?t thúc";
chon = getch();
chon = chon – 48;
clrscr();
if (chon == 1) SV.tao();
else if (chon == 2) SV.bosung();
else if (chon == 3) SV.xemsua();
else break;
}
}
ai sua jup minh voi ,nhiu loi~ qua ,cang sua~ cang saiView more random threads:
- Tạo class Honso kế thừa class Phanso (Help)
- Viết chương trình đọc nội dung file input chứa n phần tử phân số
- Vấn đề vòng lặp...
- biên dịch dev C++
- bài tập về lập trình C++.mong sự giúp đỡ từ các bạn
- Thắc mắc về đoạn code
- OOP - Composite pattern
- Thắc mắc về kiểu dữ liệu trong C
- Cho em hỏi một số hàm trong C ?
- Lỗi bài toán "Nhập và xuất 2 ma trận vuông"
-
11-06-2014, 05:03 PM #2
Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
Dài quá [IMG]images/smilies/17.gif[/IMG] bạn post luôn lỗi đi !
-
11-06-2014, 05:20 PM #3
Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
#include<fstream>
#include<iostream>
#include<conio.h>
#include<stdio.h>
#include<iomanip>
#include<ctype.h>
#include<stdlib.h>
#include<time.h>
#include<string.h>
using namespace std;
/* XAY DUNG CLASS NGAY SINH */
class ngaysinh
{
protected:
int ngay;
int thang;
int nam;
public:
ngaysinh(){}
ngaysinh(int ngay, int thang, int nam);
~ngaysinh();
void nhapns();
void hienns();
};
ngaysinh::ngaysinh(int ngay, int thang, int nam)
{
ngay=ngay;
thang=thang;
nam=nam;
}
ngaysinh::~ngaysinh()
{
ngay=thang=nam=0;
}
void ngaysinh::nhapns()
{
char ch;
cout<<"
Nhap ngay, thang, nam sinh(dd/mm/yyyy) ";
cin>>ngay>>ch>>thang>>ch>>nam;
}
void ngaysinh::hienns()
{
cout<<ngay<<"/"<<thang<<"/"<<nam<<endl;
}
/* XAY DUNG CLASS NGUOI */
class nguoiublic ngaysinh
{
protected:
int masv;
char ten[30];
ngaysinh ns;
int gt;
public:
nguoi(){}
void nhapn();
void inn();
};
void nguoi::nhapn()
{
cout<<"
Nhap ma so sinh vien:";cin>>masv;
cout<<"
Nhap ho va ten sinh vien:";gets(ten);
ns.nhapns();
cout<<"
Nhap gioi tinh ( Nam 1 / Nu 0 ) :";cin>>gt;
}
void nguoi::inn()
{
cout<<"
--------------------------------------------------";
cout<<"
Ma so sinh vien:"<<masv;
cout<<"
Ho va ten:"<<ten;
cout<<"
Ngay sinh:";ns.hienns();
cout<<"
Gioi tinh:";
if (gt==1)
cout<<"Nam";
else
cout<<"Nu";
}
;
/* XAY DUNG CLASS SINH VIEN */
class sinhvien : public nguoi
{
private:
char qq[50];
char cs[20];
public:
sinhvien(){}
void nhapsv();
void insv();
void dssv();
void ghi_file();
void doc_file(int sosv);
int sinhvien::dem();
void timkiem_ten(char ten[]);
};
//HAM NHAP
void sinhvien::nhapsv()
{
char tl;
do
{
nhapn();
cout<<"
Nhap que quan:";
gets(qq);
cout<<"
Nhap dien chinh sach:";
gets(cs);
cout<<" Lam tiep ? (y) ";
cin>>tl;
sinhvien::ghi_file();
} while (tl != 'n');
}
//HAM IN
void sinhvien::insv()
{
inn();
cout<<"
Que quan:"<<qq;
cout<<"
Dien chinh sach:"<<cs;
}
//GHI FILE
void sinhvien::ghi_file()
{
fstream f;
f.open("SINHVIEN.TXT", ios::binary|ios::app|ios:ut);
f.write((char*)this, sizeof(*this));
f.close();
}
//DOC FILE
void sinhvien::doc_file(int sosv)
{
fstream f;
f.open("SINHVIEN.TXT",ios::binary|ios::in);
f.seekg(sosv* sizeof(sinhvien) );
f.read((char*)this,sizeof(*this));
f.close();
}
//DEM SO SINH VIEN
int sinhvien::dem()
{
ifstream f;
f.open("SINHVIEN.TXT", ios::binary);
f.seekg(0, ios::end);
if(!f)
return 0;
else
return (int)f.tellg() / sizeof(sinhvien);
}
//HIEN THI DANH SACH SINH VIEN
void sinhvien::dssv()
{
sinhvien sv;
cout<<"
Co tat ca "<<sinhvien::dem()<<" sinh vien";
for (int i=0 ; i<sv.dem();i++)
{
sv.doc_file(i);
sv.insv();
}
}
;
//TIM KIEM THEO TEN
void sinhvien::timkiem_ten(char tensv[])
{
sinhvien sv;
int sosv=sinhvien::dem();
for(int i=0;i<sosv;i++)
{
sv.doc_file(i);
if(strcmp(ten,tensv)==0)
sv.insv();
}
}
//MAIN MENU
void MM(sinhvien &sv)
{
cout<<"
***************************************** **************";
cout<<"
* HE THONG QUAN LY SINH VIEN *";
cout<<"
* *";
cout<<"
* QUAN LY SINH VIEN *";
cout<<"
* *";
cout<<"
* 1. Nhap vao sinh vien *";
cout<<"
* 2. Them Sinh Vien *";
cout<<"
* 3. Tim kiem theo ten sinh vien *";
cout<<"
* 4. Danh sach sinh vien *";
cout<<"
* 5. Sua~ DS *";
cout<<"
* 6. Xoa *";
cout<<"
* *";
cout<<"
* *";
cout<<"
***************************************** **************";
cout<<"
Lua chon cong viec tuong ung ";
int n;
cin>>n;
switch(n)
{
case (1) :
{
sv.nhapsv();
MM(sv);
break;
}
case (2) :
case (3) :
{
char t[30];
cout<<"
Ten sinh vien can tim: ";
gets(t);
sv.timkiem_ten(t);
cout<<"
Nhan nut bat ki de quay lai !";
getch();
MM(sv);
break;
}
case (4) :
{
sv.dssv();
cout<<"
Nhan nut bat ki de quay lai !";
getch();
MM(sv);
break;
}
case (6) :
{
MM(sv);
break;
}
}
}
//CHUONG TRINH CHINH
void main()
{
sinhvien sv;
MM(sv);
}
ban oi xem dum minh doan code nay ,phan them voi sua~ DS minh lam k dc ,jup minh nha
xã hội vững mạnh, nhu cầu mặc đẹp của con người ngày càng cao. ngành công nghiệp thời trang cũng đang vững mạnh chóng vánh. những nhà máy gia công hàng may mặc chẳng thể đóng góp lặng thầm vào sự...
Tìm xưởng may gia công tại TP Hồ...