Chủ đề: Quản lí danh sách sinh viên!
-
20-06-2010, 12:34 PM #1Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
Quản lí danh sách sinh viên!
Anh chị giúp em làm bài tập này với.
Nhập vào họ tên SV,Mã SV,Điểm Toán, Điểm lý,điểm hóa. Yêu cầu:
+Tính Điểm trung bình,Xong rùi xuất ra các thông tin trên(cái này thì em làm được rồi).
+Sắp xếp điểm trung bình theo thứ tự tăng dần trong mảng.
+Xóa Một sinh viên bất kì trong mảng, bằng cách nhập vào mã SV.
+Xếp loại học lực: nếu Điểm TB>=8 thì giỏi,>=7 thì khá,>=5 thì trung bình,<5 thì kém...
Anh chị giúp dùm em với nhé....Em mới học nên mò hoài hông ra àh..View more random threads:
- làm gì khi malloc return NULL? (embedded)
- Help Me about HeapSort
- làm sao để viết chương trình đổi số thành chữ?
- [IDE cho thiết kế GUI C++] Tham khảo ý kiến các già làng,trưởng bản...
- giúo en bàu bày với
- Lỗi đọc file trong C++
- hỏi về lênh delay trong lập trình C
- Cách khai báo prototype trong mảng 2 chiều??
- Phát file wav bằng thư viện libsndfile
- can giúp về hàm logarit !
-
20-06-2010, 05:00 PM #2Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
Mã nguồn PHP:#include<iostream.h>#include<stdio.h>struct sinhvien{ long masv; float dt,dl,dh,tb; char hoten[20]; };void nhap(sinhvien sv[],int n){ for(int i=0;i<n;i++) { cout<<"sinh vien thu "<<i+1<<"
"; cout<<"Nhap ho va ten:"; gets(sv[i].hoten); cout<<"Nhap ma sinh vien: "; cin>>sv[i].masv; cout<<"Nhap diem toan:"; cin>>sv[i].dt; cout<<"Nhap diem ly:"; cin>>sv[i].dl; cout<<"Nhap diem hoa:"; cin>>sv[i].dh; sv[i].tb=(sv[i].dt+sv[i].dl+sv[i].dh)/3; }}void xuat(sinhvien sv[],int n){ for(int i=0;i<n;i++) { cout<<"sinh vien thu "<<i+1<<"
"; cout<<" Ho la:"<<sv[i].hoten<<"
"; cout<<" Ma sv:"<<sv[i].masv<<"
"; cout<<" Diem toan la:"<<sv[i].dt<<"
"; cout<<" Diem ly la:"<<sv[i].dl<<"
"; cout<<" Diem hoa la:"<<sv[i].dh<<"
"; cout<<" Diem trung binh la:"<<sv[i].tb<<"
"; } }void sapxepdtb(sinhvien sv[],int n){ sinhvien t; for(int i=0;i<n-1;i++) for(int j=i+1;j<n;j++) if(sv[i].tb>sv[j].tb) { t=sv[i]; sv[i]=sv[j]; sv[j]=t; }}void xoasv(sinhvien sv[],int &n,long x){ for(int i=0;i<n;i++) if(sv[i].masv==x) { for(int j=i;j<n-1;j++) sv[j]=sv[j+1]; n--; }}void main(){ sinhvien sv[20]; int n; long x; cout<<"Moi nhap so luong sv: "; cin>>n; cout<<"Moi ban nhap thong tin ve sv:"; nhap(sv,n); cout<<"Xuat danh sach sv: "; xuat(sv,n); cout<<"Sap xep theo diem tb tang dan: "; xuat(sv,n); sapxepdtb(sv,n); cout<<"nhap ma sv can xoa: "; cin>>x; cout<<"danh sach sau khi xoa: "; xoasv(sv,n,x); xuat(sv,n);}
-
20-06-2010, 05:49 PM #3Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
Còn câu xếp loại thì bạn nên dùng hàm strcpy()
Mã:void xeploai (sinhvien sv[],int n) { for (int i=0;i<n;i++) if (sv[i].tb<=10)&& (sv.[i].tb>=8) strcpy(sv.xeploai,"Gioi") else if (sv[i].tb>=7) strcpy(sv.xeploai,"Kha") else if (sv[i].tb>=5) strcpy(sv.xeploai,"TB") else strcpy(sv.xeploai,"TB") }
-
20-06-2010, 06:07 PM #4Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
Gửi bởi hoang minh nguyen
-
20-06-2010, 06:29 PM #5Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
Gửi bởi a1master.moon
Mã:char *loai[] = {"Gioi", "Kha","Trung binh","Kem"};int xeploai(sinhvien a){ float tb = (a.dt+a.dl+a.dh)/3; if (tb >=8) return 0; if (tb >=7) return 1; if (tb >=5) return 2; return 3;}
-
21-06-2010, 04:16 PM #6Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
t đề xuất code như sau:
Mã:#include "conio.h" #include "stdio.h" #include "string.h" typedef struct SV { char msv[5],ht[15]; float dt,dl,dh,dtb; char xeploai[5]; }sv; void nhap(sv ds[],int &dem) { char ma[5],ten[15]; float t,l,h; int i=1; do{ printf(" Sinh vien thu a[%d]",i); printf(" Nhap ma sinh vien:");gets(ma); if(strcmp(ma,"*")!=0) { strcpy(ds[i].msv,ma); printf("Nhap ten sinh vien:");gets(ten); strcpy(ds[i].ht,ten); printf("Diem toan:");scanf("%f",&t); ds[i].dt=t; printf("Diem ly:");scanf("%f",&l); ds[i].dl=l; printf("Diem hoa:");scanf("%f",&h); ds[i].dh=h; fflush(stdin); printf(" ========================"); ds[i].dtb=(float)(ds[i].dt+ds[i].dl+ds[i].dh)/3; i++; } }while(strcmp(ma,"*")!=0); dem=i; } void xuat(sv ds[],int dem) { for(int i=1;i<dem;i++) printf(" %5s %15s %3.2f %3.2f %3.2f %3.2f ",ds[i].msv,ds[i].ht,ds[i].dt,ds[i].dl,ds[i].dh,ds[i].dtb); } void sxep(sv ds[],int dem) { sv tg; for(int i=1;i<dem-1;i++) for(int j=i+1;j<dem;j++) if(ds[i].dtb>ds[j].dtb) { tg=ds[i]; ds[i]=ds[j]; ds[j]=tg; } } int test(sv ds[],int dem,char mx[]) { int k,d=0; for(int i=1;i<dem;i++) if(strcmp(ds[i].msv,mx)==0) d++; return d; } void xeploai(sv ds[],int dem) { for(int i=1;i<dem;i++) { if(ds[i].dtb>=8) strcpy(ds[i].xeploai,"gioi"); if(ds[i].dtb>=7 && ds[i].dtb<8) strcpy(ds[i].xeploai,"kha"); if(ds[i].dtb>=5 && ds[i].dtb<7) strcpy(ds[i].xeploai,"tb"); if(ds[i].dtb>=0 && ds[i].dtb<5) strcpy(ds[i].xeploai,"yeu"); } } void xuatxeploai(sv ds[],int dem) { for(int i=1;i<dem;i++) printf(" %5s %15s %3.2f %5s ",ds[i].msv,ds[i].ht,ds[i].dtb,ds[i].xeploai); } void main() { sv ds[50]; char mx[5]; int dem=0,j=1; clrscr(); nhap(ds,dem); printf(" Danh sach nhap vao:"); xuat(ds,dem); printf(" Danh sach sau khi sap xep:"); sxep(ds,dem); xuat(ds,dem); printf(" Nhap ma sinh vien can xoa:");gets(mx); if(test(ds,dem,mx)==0) printf(" Khong tim thay sinh vien co ma '%s'.",mx); else { for(int i=1;i<dem;i++) if(strcmp(ds[i].msv,mx)!=0) { ds[j]=ds[i]; j++; } dem=j; printf(" Danh sach sinh vien sau khi xoa:"); xuat(ds,dem); } printf(" Danh sach xep loai sinh vien:"); xeploai(ds,dem); xuatxeploai(ds,dem); getch(); }
-
21-06-2010, 05:23 PM #7Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
Gửi bởi donvuon
-
21-06-2010, 05:42 PM #8Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
Gửi bởi hoang minh nguyen
các hàm cin.get() và cin.getline() được sử dụng trong C++;và gets() được sử dụng trong C.và bạn đã sử dụng gets() trong C sang C++.Nhưng điều này là vẫn hoàn toàn chấp nhận được chứ có sao đâu
còn việc sử dụng thêm biến để lưu điểm trung bình cũng đc.có hay ko có ko quan trọng
-
21-06-2010, 06:09 PM #9Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
Gửi bởi giaicuu_505_1412
-
22-06-2010, 03:12 PM #10Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
Gửi bởi hoang minh nguyen
Hiện nay trên thị trường xuất hiện rất nhiều loại thuốc bôi tăng kích thước dương vật được lăng xê là có khả năng làm tăng kích cỡ dương vật của cánh mày râu. Tuy nhiên không phải loại thuốc nào cũng...
Thuốc tăng kích thước chim có tác...