Struct-Quản Lí Sinh Viên.
Mon Nov 26, 2012 5:57 pm
Cho dữ liệu có cấu trúc:
* SINH VIÊN
* Lớp:
Yêu Cầu:
+ĐTB< 3.5: Kém
+ĐTB<5: Yếu
+ĐTB<6.5: Trung Bình
+ĐTB<8: Khá
+ĐTB<9: Giỏi
Còn lại Xuất Sắc.
#include
#include
#include
#define max 50
typedef struct sinhvien
{
char masv[7];
char hoten[30];
char que[30];
int mon1,mon2,mon3;
int dtb;
char khoa[7];
char xeploai[30];
};
void nhap1sinhvien(sinhvien &hs)
{ flushall(); int d;
printf("\nnhap ma so sinh vien:");
gets(hs.masv);
printf("\nho ten sinh vien:");
gets(hs.hoten);
printf("\n que quan:");
gets(hs.que);
flushall();
printf("\nnhap diem mon1:");
scanf("%d",&d);hs.mon1=d;
printf("\nnhap diem mon2:");
scanf("%d",&d);hs.mon2=d;
printf("\n nhap diem mon3:");
scanf("%d",&d);hs.mon3=d;
hs.dtb=(hs.mon1+hs.mon2+hs.mon3)/3;
if (hs.dtb<3.5)
strcpy(hs.xeploai,"kem");
else if ( hs.dtb<5)
strcpy(hs.xeploai,"yeu");
else if (hs.dtb<=7)
strcpy(hs.xeploai,"trung binh");
else if (hs.dtb<8.0)
strcpy(hs.xeploai,"kha");
else
strcpy(hs.xeploai,"gioi");
flushall();
printf("\nnhap khoa:");
gets(hs.khoa);
}
void nhapdssv(sinhvien lh[],int &n)
{ printf("\nnhap vao so luong sinh vien:");
scanf("%d",&n);
for(int i=0;i { printf("\nnhap vao thong tin cua hoc sinh thu %d;\n",i+1);
nhap1sinhvien(lh[i]);
}
}
void xuat1sv(sinhvien hs)
{ printf("\nmaso sinh vien:%s",hs.masv);
printf("\nho ten sinh vien:%s",hs.hoten);
printf("\nque quan:%s",hs.que);
printf("\n diem mon1:%d",hs.mon1);
printf("\n diem mon2:%d",hs.mon2);
printf("\n diem mon3:%d",hs.mon3);
printf("\n diem trung binh:%2d",hs.dtb);
printf("\n khoa:%s",hs.khoa);
printf("\n Xep loai: %s",hs.xeploai);
}
void xuatdssv(sinhvien lh[],int n)
{ for(int i=0;i { printf("\n\n thong tin sinmh vien thu %d:",i+1);
xuat1sv(lh[i]);
}
}
void xuatdsgioi(sinhvien lh[], int &n)
{ int dem=0;
for(int i=0;i { if (lh[i].dtb>8.0)
{ dem=i;
printf("\nsinh vien xep loai gioi la:",i);
xuat1sv(lh[dem]);
}
else
printf("\nkhong co sinh vien nao gioi:");
}
}
void xuatdsnho(sinhvien lh[], int &n)
{ int dem=0;
for(int i=0;i { if (lh[i].dtb<3.5)
{ dem=i;
printf("\nsinh vien xep loai nho nhat la%d:",i);
xuat1sv(lh[dem]);
}
else
printf("\n khong co sinh vien nao nho nhat:");
}
}
void xuatcungque(sinhvien lh[],int &n)
{
for(int i=0;i { for(int j=i;j { if(lh[i].que==lh[j].que)
{
printf("\nco sinh vien cung que la %d va %d :",i,j);
xuat1sv(lh[i,j]);
}
else
printf("\nkhong co sinh vien nao cung que");
}
}
}
void main()
{ int n;
clrscr();
sinhvien lh[max];
nhapdssv(lh,n);
xuatdssv(lh,n);
xuatdsgioi(lh,n);
xuatdsnho(lh,n);
xuatcungque(lh,n);
getch();
}
Nguồn: Cao Bằng
SV Khoa CNTT ĐH BR-VT
* SINH VIÊN
- +masv: dạng chuỗi, tối đa 7 kí tự.
- +họ tên: chuỗi, tối đa 30 kí tự.
- +quê quán: chuỗi, tối đa 50 kí tự
- +khoa: chuỗi, tối đa 7 kí tự.
- +điểm môn 1, 2, 3: dạng số nguyên.
* Lớp:
- + SV: kiểu dữ liệu SINH VIÊN.
- +ĐTB; kiểu số thực
- +Xếp loại: chuỗi, tối đa 20 kí tự.
Yêu Cầu:
- Hãy viết hàm nhập, xuất danh sách sinh viên trong lớp.
- Viết hàm tính điểm trung bình cho các sinh viên.
- Xếp loại học lực cho các sinh viên theo thang điểm sau:
+ĐTB< 3.5: Kém
+ĐTB<5: Yếu
+ĐTB<6.5: Trung Bình
+ĐTB<8: Khá
+ĐTB<9: Giỏi
Còn lại Xuất Sắc.
- Viết Hàm in danh sách sinh viên đạt loại giỏi của lớp
- Viết Hàm tìm Sinh viên giỏi nhất.
- Viết Hàm tìm sinh viên có tên họ đối xứng và đối xứng dài nhất (2 hàm)
- Viết hàm tìm sinh viên cùng quê.
#include
#include
#include
#define max 50
typedef struct sinhvien
{
char masv[7];
char hoten[30];
char que[30];
int mon1,mon2,mon3;
int dtb;
char khoa[7];
char xeploai[30];
};
void nhap1sinhvien(sinhvien &hs)
{ flushall(); int d;
printf("\nnhap ma so sinh vien:");
gets(hs.masv);
printf("\nho ten sinh vien:");
gets(hs.hoten);
printf("\n que quan:");
gets(hs.que);
flushall();
printf("\nnhap diem mon1:");
scanf("%d",&d);hs.mon1=d;
printf("\nnhap diem mon2:");
scanf("%d",&d);hs.mon2=d;
printf("\n nhap diem mon3:");
scanf("%d",&d);hs.mon3=d;
hs.dtb=(hs.mon1+hs.mon2+hs.mon3)/3;
if (hs.dtb<3.5)
strcpy(hs.xeploai,"kem");
else if ( hs.dtb<5)
strcpy(hs.xeploai,"yeu");
else if (hs.dtb<=7)
strcpy(hs.xeploai,"trung binh");
else if (hs.dtb<8.0)
strcpy(hs.xeploai,"kha");
else
strcpy(hs.xeploai,"gioi");
flushall();
printf("\nnhap khoa:");
gets(hs.khoa);
}
void nhapdssv(sinhvien lh[],int &n)
{ printf("\nnhap vao so luong sinh vien:");
scanf("%d",&n);
for(int i=0;i
nhap1sinhvien(lh[i]);
}
}
void xuat1sv(sinhvien hs)
{ printf("\nmaso sinh vien:%s",hs.masv);
printf("\nho ten sinh vien:%s",hs.hoten);
printf("\nque quan:%s",hs.que);
printf("\n diem mon1:%d",hs.mon1);
printf("\n diem mon2:%d",hs.mon2);
printf("\n diem mon3:%d",hs.mon3);
printf("\n diem trung binh:%2d",hs.dtb);
printf("\n khoa:%s",hs.khoa);
printf("\n Xep loai: %s",hs.xeploai);
}
void xuatdssv(sinhvien lh[],int n)
{ for(int i=0;i
xuat1sv(lh[i]);
}
}
void xuatdsgioi(sinhvien lh[], int &n)
{ int dem=0;
for(int i=0;i
{ dem=i;
printf("\nsinh vien xep loai gioi la:",i);
xuat1sv(lh[dem]);
}
else
printf("\nkhong co sinh vien nao gioi:");
}
}
void xuatdsnho(sinhvien lh[], int &n)
{ int dem=0;
for(int i=0;i
{ dem=i;
printf("\nsinh vien xep loai nho nhat la%d:",i);
xuat1sv(lh[dem]);
}
else
printf("\n khong co sinh vien nao nho nhat:");
}
}
void xuatcungque(sinhvien lh[],int &n)
{
for(int i=0;i
{
printf("\nco sinh vien cung que la %d va %d :",i,j);
xuat1sv(lh[i,j]);
}
else
printf("\nkhong co sinh vien nao cung que");
}
}
}
void main()
{ int n;
clrscr();
sinhvien lh[max];
nhapdssv(lh,n);
xuatdssv(lh,n);
xuatdsgioi(lh,n);
xuatdsnho(lh,n);
xuatcungque(lh,n);
getch();
}
Nguồn: Cao Bằng
SV Khoa CNTT ĐH BR-VT
Permissions in this forum:
Bạn không có quyền trả lời bài viết
|
|