01/10/2018, 16:33

Mình bị vấn đề về class

Mình làm một class student, class gồm thông tin tên sinh viên, mssv, ngày sinh, và điểm các môn học toán, lí, hóa, sinh, văn ,và anh văn. Bên dưới là hàm student.nhap()của mình:

------------------------*******************---------------------
// file sutdent.cpp

#include “student.h”
#include “string”
#include “cstdio”
using namespace std;

student::student()
{

}
float student::diemkhoia() {
return toan + li + hoa;
}
float student::diemkhoia1() {
return toan + li + anh;
}
float student::diemkhoib() {
return toan + sinh + hoa;
}
float student::diemkhoid() {
return toan + van + anh;
}
void student :: nhap() {
string name, mssv, ngaysinh;
cin >> toan >> li >> hoa >> sinh >> van >> anh;
}
void student :: xuat() {
cout << name << “ ” << mssv << “ ” << ngaysinh << “ ” << toan << “ ” << li << “ ” << hoa << “ ” << sinh << “ ” << van << “ ” << anh << endl; ;

}
void student::thongkediem() {
cout << “Tong diem khoi A la :” << diemkhoia() << endl;
cout << “Diem trung binh khoi A la :” << static_cast(diemkhoia() / 3) << endl;
cout << “Tong diem khoi B la :” << diemkhoib() << endl;
cout << “Diem trung binh khoi B la :” << static_cast(diemkhoib() / 3) << endl;
cout << “Tong diem khoi A1 la :” << diemkhoia1() << endl;
cout << “Diem trung binh khoi A1 la :” << static_cast(diemkhoia1() / 3) << endl;
cout << “Tong diem khoi D la :” << diemkhoid() << endl;
cout << “Diem trung binh khoi D la :” << static_cast(diemkhoid() / 3) << endl;
}

student::~student()
{
}

-----------------------*******************-----------------------

// file main.c

#include “iostream”
#include “string”
#include “student.h”
using namespace std;
int main() {
cout.precision(15);
student sinhvien[3];
cout << “FORM input: name(viet lien khong dau) mssv ngaysinh(dd/mm/yy) toan li hoa sinh van anh” << endl << endl;
for (int i = 0; i < 2; i++) {
cout << "xin moi nhap thong tin sinh vien " << i << endl << endl;
sinhvien[i].nhap();
sinhvien[i].xuat();
}
//sinhvien[1].xuat();
//sinhvien[1].thongkediem();
system(“pause”);
return 0;
}

Code không chạy đúng khi nhập đến student thứ n-1, student thứ n-1 không nhập được các thông tin điểm số toán lí hóa sinh văn anh. Code gán giá trị rác cho thành phần điểm của student thứ n-1. Ai giúp mình với ạ. Mình cám ơn các bạn nhiều

Nguyễn Đình Anh viết 18:35 ngày 01/10/2018

Trước khi đăng lên nhớ Mark Down code trước đã

dogbrain viết 18:48 ngày 01/10/2018

hehe. lần đầu. mọi người thông cảm tí. cám ơn bạn

Nguyen Hieu viết 18:48 ngày 01/10/2018

Bạn up nguyên code lên xem nào

Nguyen Hieu viết 18:39 ngày 01/10/2018
     student sinhvien[3];
cout << "FORM input: name(viet lien khong dau) mssv ngaysinh(dd/mm/yy) toan li hoa sinh van anh" << endl << endl;
for (int i = 0; i < 2; i++) 

Mảng 3 phần từ nhưng i chỉ chạy tới 1 (i<2), sửa lại nhé!

Bài liên quan
0