30/09/2018, 18:23
Lỗi RUNTIME CHECK FAILURE3 trong VISUAL
Khi em chạy chương trình sau :
ĐỀ BÀI :(nôm na)
Tạo chương trình nhap vao thong tin cua nhan vien co thuco tinh la struct Employ.
Gồm các chưa năng:
1 . Nhap vao thong tin
2 . Sap xep va hien thi thong tin nhan vien theo ten
3. Hien thi tat ca thong tin cac nhan vien
Và khi em lựa chọn chức năng 2 thì báo lỗi chưa khai báo biến temp.???
Em không hiểu vì sao lại như thế.Rõ ràng em đã khai báo trong ham main()
Các anh giúp em với ah
#include "stdafx.h"
typedef struct Employ {
char name[30];
char address[40];
int job;
int level;
} Employee;
void Nhap(Employee * Nhanvien,int N);
void Hienthi(Employee * Nhanvien,int N);
void Sapxepten(Employee * Nhanvien,int N,Employee temp);
int main() {
// Khoi tao doi tuong cho struct hay khoi tao 1 doi tuong nhan vien va cap phat bo nho cho no.
Employee * Nhanvien;
Employee temp;// Khoi tao nhan vien temp
int N;
Nhanvien = (Employee*)malloc (50 * sizeof(Employee));
// Tao Me Nu
cout << "
+++++++++++++++++++++++WELCOME+++++++++++++++++++++++++++";
cout << "
************************";
cout << "
*************************MENU***************************";
cout << "
1 . Nhap vao thong tin nhan vien ";
cout << "
2.Sap xep thong tin nhan vien theo ten ";
cout << "
3.Sap xep thong tin nhan vien theo nghe nghiep";
cout << "
4.Hien thi tat ca nhan vien ";
cout << "
5.Thoat Khoi Chuong Trinh";
// Tao lua chon cho chuong trinh
char c ;
//c= getch();
do {
cout << "
Nhap vao lua chon cua ban 1->5 : ";
c = getch();
switch (c) {
case '1':
cout << "
-------Nhap thong tin nhan vien ------------- ";
cout << "
So Luong Nhan Vien Can Nhap : ";
cin >> N;
Nhap( Nhanvien, N);
break;
case '2':
Sapxepten( Nhanvien,N,temp);
break;
case '3':
break;
case '4':
Hienthi( Nhanvien, N);
break;
case '5':
break;
}
} while (c != '5');
getch();
}
void Nhap(Employee * Nhanvien,int N) {
for(int i = 0; i < N ; i++) {
cout << "
Nhan Vien Thu " << i+1;
cout << "
Name : ";
fflush(stdin);
gets(Nhanvien[i].name);
cout << "
Address : ";
fflush(stdin);
gets(Nhanvien[i].address);
cout << "
Job : ";
cin >> Nhanvien[i].job;
cout << "
Level [1->7]: ";
do {
cin >> Nhanvien[i].level;
if(Nhanvien[i].level > 7)
cout << "
Nhap lai Level 1->7 : ";
} while((Nhanvien[i].level < 1)||(Nhanvien[i].level > 7));
}
}
void Sapxepten(Employee * Nhanvien,int N,Employee temp) {
cout << "
Sap xep thep ten ";
for(int i = 0; i < N-1; i++)
for(int j = i+1; j < N; j++)
if(strcmp(Nhanvien[j].name,Nhanvien[i].name) > 0) {
temp = Nhanvien[j];
Nhanvien[j] = Nhanvien[i];
Nhanvien[i] = temp;
}
Hienthi(Nhanvien,N);
}
void Hienthi(Employee * Nhanvien,int N) {
char * Nghe;
cout << "
-----------------Hien thi Nhan vien--------------------- ";
cout << "
Name"<<" " << "Address"<<" "<<"Job"<<" "<<"Level";
for(int i = 0; i < N; i++) {
switch(Nhanvien[i].job) {
case 1 :
Nghe = "Chuyen Vien";
break;
case 2:
Nghe = "Giao Dich Vien";
break;
case 3:
Nghe = "Giam Doc";
break;
case 4:
Nghe = "CEO";
break;
}
cout << "
Nhan vien " << i+1;
cout <<"
"<<Nhanvien[i].name<<" "<<Nhanvien[i].address<<" "<<Nghe<<" "<<Nhanvien[i].level;
}
}
Bài liên quan