1. THÔNG BÁO TUYỂN ADMIN DIỄN ĐÀN 2013
    Tìm kiếm nhà trọ - Ở ghép
    THÔNG BÁO BÁN ÁO SPKT.NET CHO THÀNH VIÊN DIỄN ĐÀN


    HÃY TÌM KIẾM Ở ĐÂY TRƯỚC KHI ĐẶT CÂU HỎI
    {xen:phrase loading}

Bài tập lập trình QUẢN LÝ SINH VIÊN

Thảo luận trong 'C/C++' bắt đầu bởi phoenix, 30 Tháng năm 2009.

  1. phoenix Administrator

    Số bài viết: 633
    Đã được thích: 13
    Điểm thành tích: 0
    HỌC THẦY SƠN 100% là đậu môn C ............ tuyệt vời với cách dạy hay dễ hiêủ

    Viết chương trình xây dựng 1 cấu trúc ứng với từng phiếu điểm cuả thí sinh dự thi đại học, gồm các phần sau:
    -Họ tên, quê quán, trường, tuổi, SBd, điểm thi
    -Trong đó họ tên lại là 1 cấu trúc gồm 3 thành phần: Họ, tên, tên đệm
    -Điểm thi alf 1 cấu trúc gồm 3 thành phần :toán, lý, hoá
    -Nhập và hiển thị dữ liệu cho danh sách tuyển sinh năm 2009.

    Mã:
    [FONT=Courier New]#include <stdio.h>[/FONT]
    [FONT=Courier New]#include <conio.h>[/FONT]
    [FONT=Courier New]#include <string.h>[/FONT]
    [FONT=Courier New]#define max 100[/FONT]
     
    [FONT=Courier New]typedef struct { char ho[10]; char tendem[20];char ten [10]; } hoten;[/FONT]
    [FONT=Courier New]typedef struct {float toan; float ly; float hoa;} diem;[/FONT]
    [FONT=Courier New]typedef struct {hoten HVT; char quequan[30]; char truong[50];[/FONT]
    [FONT=Courier New]    unsigned char tuoi; int SBD; diem diemthi;}[/FONT]
    [FONT=Courier New]sinhvien;[/FONT]
    [FONT=Courier New]void nhaphoten(hoten *HVT)[/FONT]
    [FONT=Courier New]{   char st[20];[/FONT]
    [FONT=Courier New]  printf("\nHo : ");[/FONT]
    [FONT=Courier New] fflush(stdin);[/FONT]
    [FONT=Courier New] gets(st);[/FONT]
    [FONT=Courier New] strcpy(HVT->ho,st);[/FONT]
    [FONT=Courier New]  printf("\nTen dem : ");[/FONT]
    [FONT=Courier New] fflush(stdin);[/FONT]
    [FONT=Courier New] gets(st);[/FONT]
    [FONT=Courier New] strcpy(HVT->tendem,st);[/FONT]
    [FONT=Courier New]  printf("\nTen : ");[/FONT]
    [FONT=Courier New] fflush(stdin);[/FONT]
    [FONT=Courier New] gets(st);[/FONT]
    [FONT=Courier New] strcpy(HVT->ten,st);[/FONT]
    [FONT=Courier New]}[/FONT]
    [FONT=Courier New]void nhapdiem(diem *d)[/FONT]
    [FONT=Courier New]{         float temp;[/FONT]
    [FONT=Courier New] printf("\nDiem toan: ");[/FONT]
    [FONT=Courier New]    scanf("%f",&temp);[/FONT]
    [FONT=Courier New]    d->toan=temp;[/FONT]
    [FONT=Courier New] printf("\nDiem ly : ");[/FONT]
    [FONT=Courier New]    scanf("%f", &temp);[/FONT]
    [FONT=Courier New]    d->ly=temp;[/FONT]
    [FONT=Courier New] printf("\nDiem hoa : ");[/FONT]
    [FONT=Courier New]    scanf("%f", &temp);[/FONT]
    [FONT=Courier New]    d->hoa=temp;[/FONT]
    [FONT=Courier New]}[/FONT]
    [FONT=Courier New]void nhap(sinhvien ds[max],int *n)[/FONT]
    [FONT=Courier New]{       char st1[30];[/FONT]
    [FONT=Courier New] unsigned char t;[/FONT]
    [FONT=Courier New] int sbd,i;[/FONT]
    [FONT=Courier New] printf("nhap vao so thi sinh:");[/FONT]
    [FONT=Courier New] scanf("%d",n);[/FONT]
    [FONT=Courier New] for(i=0;i<*n;i++)[/FONT]
    [FONT=Courier New] {   printf("nhap thong tin thi sinh %d:\n",i+1);[/FONT]
    [FONT=Courier New]    printf(" ho va ten:\n");[/FONT]
    [FONT=Courier New]       nhaphoten(&ds[i].HVT);[/FONT]
    [FONT=Courier New]    printf(" diem thi:\n");[/FONT]
    [FONT=Courier New]       nhapdiem(&ds[i].diemthi);[/FONT]
    [FONT=Courier New]    printf("truong:\n");[/FONT]
    [FONT=Courier New]       fflush(stdin);[/FONT]
    [FONT=Courier New]       gets(st1);[/FONT]
    [FONT=Courier New]       strcpy(ds[i].truong,st1);[/FONT]
    [FONT=Courier New]    printf(" que quan:\n");[/FONT]
    [FONT=Courier New]       fflush(stdin);[/FONT]
    [FONT=Courier New]       gets(st1);[/FONT]
    [FONT=Courier New]       strcpy(ds[i].quequan,st1);[/FONT]
     
    [FONT=Courier New]    printf("tuoi:\n");[/FONT]
    [FONT=Courier New]       scanf("%d",&t);[/FONT]
    [FONT=Courier New]       ds[i].tuoi=t;[/FONT]
    [FONT=Courier New]    printf("SBD:\n");[/FONT]
    [FONT=Courier New]       scanf("%d",&sbd);[/FONT]
    [FONT=Courier New]       ds[i].SBD=sbd;[/FONT]
    [FONT=Courier New] }[/FONT]
    [FONT=Courier New]}[/FONT]
    [FONT=Courier New]void hienthi(sinhvien ds[max],int n)[/FONT]
    [FONT=Courier New]{   int i;[/FONT]
    [FONT=Courier New]  printf("\n+---+------------------+--------+------+-----+-----+-----+-----+-----+");[/FONT]
    [FONT=Courier New]  printf("\n|STT| HO  VA   TEN     |que quan|truong|tuoi | SBD | toan| ly  | hoa |");[/FONT]
    [FONT=Courier New]  printf("\n+---+------------------+--------+------+-----+-----+-----+-----+-----+");[/FONT]
    [FONT=Courier New]  for (i=0; i<n; i++)[/FONT]
    [FONT=Courier New]  printf("\n| %3d |%5s %10s %5s| %8s| %10s | %4d | %4d |% 2.2f|%2.2f|%2.2f",i+1, [/FONT]
    [FONT=Courier New] ds[i].HVT.ho,ds[i].HVT.tendem,ds[i].HVT.ten,ds[i].quequan, ds[i].truong, ds[i].tuoi, ds[i].SBD,ds[i].diemthi.toan,ds[i].diemthi.ly,ds[i].diemthi.hoa);[/FONT]
     
    [FONT=Courier New]  printf("\n+---+------------------+--------+------+-----+-----+-----+-----+-----+");[/FONT]
     
    [FONT=Courier New]}[/FONT]
    [FONT=Courier New]void main()[/FONT]
    [FONT=Courier New]{   int n;[/FONT]
    [FONT=Courier New] sinhvien dsts[max];[/FONT]
    [FONT=Courier New] nhap(dsts,&n);[/FONT]
    [FONT=Courier New] printf("Danh Sach Tuyen Sinh nam 2009:\n");[/FONT]
    [FONT=Courier New] hienthi(dsts,n);[/FONT]
    [FONT=Courier New] getch();[/FONT]
    [FONT=Courier New]}[/FONT]
    [IMG]



    Các bạn 08119 nếu có vấn đề gì hỏi qua tớ nha . nếu tớ chưa giải ra thì spam qua thầy sơn .......Chúc mọi người qua kỳ 2 năm 2009 này tốt..........thanks
  2. docvuong New Member

    Số bài viết: 60
    Đã được thích: 0
    Điểm thành tích: 0
    ban thu gop y :
    #include<iostream.h>
    #include<stdio.h>
    #include<conio.h>
    class thisinh
    {
    char hoten[25];
    int namsinh,sbd;
    public:
    void nhapts()
    {
    cout<<"ho ten \n" ;
    gets(hoten);
    cout<<"\n nhap so bao danh ";
    cin>>sbd;
    cout<<"\n nhap vao nam sinh ";
    cin>>namsinh;
    }
    void xuatts()
    {
    cout<<"ho va te :"<<hoten<<endl;
    cout<<"so bao danh :"<<sbd<<endl;
    cout<<"nam sinh : "<<namsinh<<endl;
    }
    };
    class diem
    {
    float t,l,h ;
    public:
    void nhapdiem()
    {
    cout<<"nhap diem mon t ";
    cin>>t ;
    cout<<"nhap diem mon l ";
    cin>>l ;
    cout<<"nhap diem mon h ";
    cin>>h ;
    }
    void xuatdiem()
    {
    cout<<"diem mon toan : "<<t<<endl;
    cout<<"diem mon li : "<<l<<endl;
    cout<<"diem mon hoa : "<<h<<endl;
    }
    };
    class DIEM_UU_TIEN
    {
    int kv ;
    char hoi ;
    public :
    void nhapdiem_uu_tien()
    {
    cout<<"ban nhap vao khu vuc " ;
    cin>>kv ;
    cout<<"ban co nghe ko ? c/k" ;
    cin>>hoi ;
    }
    void xuatdiem_uu_tien()
    {
    if(kv=1)
    cout<<"diem uu tien la : "<<"+1"<<endl;
    else if (kv=2)
    cout<<"diem uu tien la : "<<"+2"<<endl;
    else
    cout<<"ban ko co diem uu tien"<<endl ;
    if(hoi=='c')
    cout<<"diem nghe ban dc "<<"1"<<endl;
    else
    cout<<"ban ko co diem nghe"<<endl ;
    }
    };
    class KET_QUA : public diem , public DIEM_UU_TIEN,public thisinh
    {
    int tong ;
    public:
    void nhap()
    {
    nhapts();
    nhapdiem();
    nhapdiem_uu_tien();
    }
    void xuat()
    {
    xuatts();
    xuatdiem();
    xuatdiem_uu_tien();
    }
    };
    void main()
    {
    KET_QUA ts ;
    ts.nhap();
    ts.xuat();
    getch();
    }
  3. phanquocviet New Member

    Số bài viết: 918
    Đã được thích: 0
    Điểm thành tích: 0
  4. phoenix Administrator

    Số bài viết: 633
    Đã được thích: 13
    Điểm thành tích: 0
  5. docvuong New Member

    Số bài viết: 60
    Đã được thích: 0
    Điểm thành tích: 0
    chú Việt wa khen.a học kiếm kon 5 để wa.c với c++ cung như nhau mà tại đang hoc c++ làm theo c++ lun. ah,chú Lam còn ju đề thi c ko? bữa nào cho mun pho to đi.
  6. small ant Well-Known Member

    Số bài viết: 2,827
    Đã được thích: 88
    Điểm thành tích: 48
    Giới tính: Nữ
    heh e ! giống bài thầy giải quá !!! :012: Hình như C++ chỉ yêu cầu nhập xuất là chính thôi chứ không yêu cầu thuật toán cao. C mới ghê hơn C++ nhiều !
  7. docvuong New Member

    Số bài viết: 60
    Đã được thích: 0
    Điểm thành tích: 0
    bài wan li sinh vien tính lam tiếp mà khi nhập danh sách,cho nhập tên sv 1,ko cho nhap tên sv 2.
    pro nào test lai jum voi. Thanks

    //VIET CHUONG TR`NH QUAN LI SV DUNG CLASS : SBD,TEN,NAM SINH,T,L,H,TONG DIEM
    //DIEM UU TIEN(KV1+1,KV2+2,NGHE +1
    //A/ IN RA DANH SACH TSINH
    //B/XUAT TSINH DAU THU KHOA
    //C/DS TSINH DAU DH (DIEM CHUAN >20)
    #include<iostream.h>
    #include<stdio.h>
    #include<conio.h>
    class thisinh
    {
    char hoten[50];
    int namsinh,sbd;
    public:
    void nhapts()
    {
    cout<<"\nHo Va Ten :" ;
    gets(hoten);
    cout<<"\nso bao danh:";
    cin>>sbd;
    cout<<"\nSinh Nam : ";
    cin>>namsinh;
    }
    void xuatts()
    {
    cout<<"\n Ho Ten : "<< hoten<<endl;
    cout<<"\n So Bao Danh : "<<sbd<<endl;
    cout<<"\n Nam Sinh : "<<namsinh<<endl;
    }
    };
    class diem
    {
    float t,l,h ;
    public:
    void nhapdiem()
    {
    cout<<"\nnhap diem mon toan : ";
    cin>>t ;
    cout<<"\nnhap diem mon ly : ";
    cin>>l ;
    cout<<"\nnhap diem mon hoa : ";
    cin>>h ;
    }
    void xuatdiem()
    {
    cout<<"\n diem mon toan : "<<t<<endl;
    cout<<"\n diem mon li : "<<l<<endl;
    cout<<"\n diem mon hoa : "<<h<<endl;
    }
    float tong3mon()
    {
    return (t+l+h) ;
    }
    };
    class DIEM_UU_TIEN
    {
    int kv,nghe,tongdiem;
    char hoi ;
    public :
    void nhapdiem_uu_tien()
    {
    cout<<"\n ban thuoc khu vuc may ? " ;
    cin>>kv ;
    cout<<"\n ban co nghe ko ? c/k" ;
    cin>>hoi ;
    }
    void xuatdiem_uu_tien()
    {
    if(kv==1)
    cout<<"\n diem uu tien khu vuc cua ban la : "<<kv<<endl;
    else if (kv==2)
    cout<<"\n diem uu tien khu vuc cua ban la : "<<kv<<endl;
    else
    cout<<"\n ban ko co diem uu tien khu vuc "<<endl ;
    }
    void xuatdiem_nghe()
    {
    if(hoi=='c')
    {
    nghe = 1 ;
    cout<<"\n diem nghe cua ban la : "<<nghe<<endl ;
    }
    else
    {
    nghe =0;
    cout<<"\n ban ko co diem nghe "<<endl ;
    }
    }
    int diemut()
    {
    return (nghe+kv) ;
    }
    };
    class KET_QUA : public diem , public DIEM_UU_TIEN,public thisinh
    {
    int tong ;
    public:
    void nhap()
    {
    nhapts();
    nhapdiem();
    nhapdiem_uu_tien();
    }
    void xuat()
    {
    xuatts();
    xuatdiem();
    xuatdiem_uu_tien();
    xuatdiem_nghe();
    }
    };
    void main()
    {
    int n,i ;
    KET_QUA *ts ;
    cout<<" nhap vao so thi sinh : " ;
    cin>>n ;
    ts=new KET_QUA[n] ;
    if (ts==NULL)
    {
    cout<<"loi cap phat bo nho";
    exit(0);
    }
    for(i=0;i<n;i++)
    {
    cout<<"thi sinh thu " <<i+1<<endl ;
    ts.nhap();
    }
    cout<<"\n danh sach thi sinh "<<endl ;
    cout<<"===================================="<<endl ;
    for(i=0;i<n;i++)
    {
    cout<<"thi sinh thu " <<i+1<<endl ;
    ts.xuat();
    cout<<"\n tong diem thi DH cua TS la : "<<ts.diemut()+ts.tong3mon()<<endl ;
    }
    cout<<"===================================="<<endl ;
    getch();
    }
  8. thinkofluv New Member

    Số bài viết: 2
    Đã được thích: 0
    Điểm thành tích: 0
    Ai làm hộ em bài này với. Ngày mai phải nộp rồi :((
    Em xin hậu tạ sau :((
    Dù biết là bài đơn giản nhưng em viết code sai lên sai xuống nên nản quá. Tại nghỉ học nên cũng ko hiểu mấy :((.
    Dùng danh sách liên kết nhé !
    Kiểu con trỏ ...


  9. phoenix Administrator

    Số bài viết: 633
    Đã được thích: 13
    Điểm thành tích: 0
    Tham khảo nhé em . giờ sắp thi rồi nên chủ yếu là tư duy thôi . chứ làm cả thì anh củng không giám làm

    Mã:
    # include<stdio.h>
    # include<conio.h>
    # include<string.h>
    # include<stdlib.h>
    
    //KHAI BAO STRUCT TOAN CUC
    struct sinhvien
    {
        char mssv[20];
        char nam[30];
        float toan;
        float ly;
        float hoa;
        float tb;
       float tong;
       int kv;
    };
    
    //KHAI BAO PROTOTYPE
    void nhap(struct sinhvien,int);
    void xuat(struct sinhvien,int);
    void tbmax(struct sinhvien,int);
    void toanmax(struct sinhvien,int);
    void sxms(struct sinhvien,int);
    void sx(struct sinhvien,int);
    void rot(struct sinhvien,int);
    void thukhoa(struct sinhvien,int);
    void dau(struct sinhvien,int);
    void cd(struct sinhvien,int);
    void menu();
    
    //HAM IN MENU
    void menu()
    {
        printf("-------------------\n");
       printf("\n\r QUAN LY SINH VIEN\n");
       printf("-------------------\n");
       printf("\n\r MENU:\n");
       printf("\n");
       printf("\n\r 1:IN DANH SACH");
       printf("\n\r 2:TIM SINH VIEN CO DIEM TOAN CAO NHAT");
       printf("\n\r 3:TIM SINH VIEN CO DIEM TB CAO NHAT");
       //printf("\n\r 4:TIM SINH VIEN THU KHOA");
       //printf("\n\r 5:IN SINH VIEN ROT 3 MON");
       //printf("\n\r 6:SAP XEP SINH VIEN THEO TONG DIEM TANG DAN");
       printf("\n\r 4:SAP XEP SINH VIEN THEO THU TU ALPHA");
       //printf("\n\r 8:IN DANH SACH SINH VIEN DAU");
       //printf("\n\r 9:IN DANH SACH SINH VIEN DUOC CONG DIEM");
       printf("\n\r 0:THOAT");
       printf("\n\r CHOICE 0,1,2,3,4\n");
       printf("\n");
    }
    //HAM NHAP DANH SACH SINH VIEN
    void nhap(struct sinhvien sv[],int n)
    {
        char tam[20];
        int i;
        for(i=0;i<n;i++)
        {
            
            printf("Nhap ma so sinh vien thu %d:",i+1);
            gets(sv[i].mssv);
            printf("Ho ten sinh vien:");
            gets(sv[i].nam);
            printf("Nhap diem toan:");
            gets(tam);
            sv[i].toan=atof(tam);
            printf("Nhap diem ly:");
            gets(tam);
            sv[i].ly=atof(tam);
            printf("Nhap diem hoa:");
            gets(tam);
            sv[i].hoa=atof(tam);
          //printf("Nhap khu vuc:");
          //gets(tam);
            //    sv[i].kv=atoi(tam);
        }
    }
    
    //HAM IN DANH SACH SINH VIEN
    void xuat(struct sinhvien sv[],int n)
    {
        int i;
        for(i=0;i<n;i++)
             
            printf("Mssv thu %d :%s\n ho ten:%s\n Diem toan:%.1f Diem ly:%.1f Diem hoa:%.1f\n ",i+1,sv[i].mssv,sv[i].nam,sv[i].toan,sv[i].ly,sv[i].hoa,sv[i].kv);
    }
    
    //HAM IN SINH VIEN CO DIEM TB CAO NHAT
    void tbmax(struct sinhvien sv[],int n)
    {
        int i;
        float max;
        for(i=0;i<n;i++)
            sv[i].tb=(sv[i].toan+sv[i].ly+sv[i].hoa)/3;
        max=sv[0].tb;
        for(i=1;i<n;i++)
            if(sv[i].tb>max)
                max=sv[i].tb;
        for(i=0;i<n;i++)
            if(sv[i].tb==max)
                printf("Sv co diem tb cao nhat la :%s .Diem tb:%.2f\n",sv[i].mssv,max);
    }
    
    //HAM IN SINH VIEN CO DIEM TOAN CAO NHAT
    void toanmax(struct sinhvien sv[],int n)
    {
        int i;
       float max;
        max=sv[0].toan;
        for(i=1;i<n;i++)
            if(sv[i].toan>max)
                max=sv[i].toan;
        for(i=0;i<n;i++)
            if(sv[i].toan==max)
                printf("Sv co diem toan cao nhat la :%s .Diem toan:%.1f\n",sv[i].mssv,max);
    }
    
    //HAM TIM SINH VIEN THU KHOA
    /*void thukhoa(struct sinhvien sv[],int n)
    {
        int i;
       float max;
       for(i=0;i<n;i++)
       {
           if(sv[i].kv==1)
              sv[i].tong=sv[i].toan+sv[i].ly+sv[i].hoa+3;
          else if(sv[i].kv==2)
             sv[i].tong=sv[i].toan+sv[i].ly+sv[i].hoa+2;
          else if(sv[i].kv==3)
             sv[i].tong=sv[i].toan+sv[i].ly+sv[i].hoa+1;
          else
             sv[i].tong=sv[i].toan+sv[i].ly+sv[i].hoa;
       }
        max=sv[0].tong;
        for(i=1;i<n;i++)
            if(sv[i].tong>max)
                max=sv[i].tong;
        for(i=0;i<n;i++)
            if(sv[i].tong==max)
                printf("Sv dau thu khoa la :%s .Tong diem:%.2f\n",sv[i].mssv,max);
    } */
    
    //HAM IN DANH SACH SINH VIEN DAU
    /* void dau(struct sinhvien sv[],int n)
    {
          int i;
               for(i=0;i<n;i++)
       {
           if(sv[i].kv==1)
              sv[i].tong=sv[i].toan+sv[i].ly+sv[i].hoa+3;
          else if(sv[i].kv==2)
         sv[i].tong=sv[i].toan+sv[i].ly+sv[i].hoa+2;
          else if(sv[i].kv==3)
             sv[i].tong=sv[i].toan+sv[i].ly+sv[i].hoa+1;
          else
             sv[i].tong=sv[i].toan+sv[i].ly+sv[i].hoa;
       }
       for(i=0;i<n;i++)
           if(sv[i].tong>18)
              printf("Sinh vien :%s dau\n",sv[i].mssv);
    }  */
    
    //HAM IN DANH SACH SINH VIEN DUOC CONG DIEM
    /*void cd(struct sinhvien sv[],int n)
    {
        int i;
       for(i=0;i<n;i++)
           if((sv[i].kv==1)||(sv[i].kv==2)||(sv[i].kv==3))
              printf("Sinh vien duoc cong diem la:%s\n",sv[i].mssv);
    }   */
    
    //HAM IN SINH VIEN ROT 3 MON
    /*void rot(struct sinhvien sv[],int n)
    {
        int i,a=0;
        for(i=0;i<n;i++)
       {
            if((sv[i].toan<5)&&(sv[i].ly<5)&&(sv[i].hoa<5))
          {
                printf("Sinh vien rot 3 mon la :%s\n",sv[i].mssv);
             a=1;
          }
       }
       if(a==0)
              printf("Khong co sinh vien rot 3 mon\n");
    } */
    
    //HAM SAP XEP SINH VIEN THEO TONG DIEM TANG DAN
    void sx(struct sinhvien sv[],int n)
    {
        struct sinhvien t;
       int i,j;
       for(i=0;i<n;i++)
       {
           if(sv[i].kv==1)
              sv[i].tong=sv[i].toan+sv[i].ly+sv[i].hoa+3;
          else if(sv[i].kv==2)
             sv[i].tong=sv[i].toan+sv[i].ly+sv[i].hoa+2;
          else if(sv[i].kv==3)
             sv[i].tong=sv[i].toan+sv[i].ly+sv[i].hoa+1;
          else
             sv[i].tong=sv[i].toan+sv[i].ly+sv[i].hoa;
       }
        for(i=0;i<n-1;i++)
        {
            for(j=i+1;j<n;j++)
            {
                if(sv[i].tong>sv[j].tong)
                {
                    t=sv[i];
                    sv[i]=sv[j];
                    sv[j]=t;
                }
            }
        }
       for(i=0;i<n;i++)
        {
            printf("Sinh vien:%s . Tong diem:%.2f\n",sv[i].mssv,sv[i].tong);
        }
    }
    
    //HAM SAP XEP SINH VIEN THEO THU TU TANG MSSV
    void sxms(struct sinhvien sv[],int n)
    {
        struct sinhvien t;
       int i,j,k;
        for(i=0;i<n-1;i++)
        {
            for(j=i+1;j<n;j++)
            {
              k=strcmp(sv[i].nam,sv[j].nam);
                if(k>0)
                {
                    t=sv[i];
                    sv[i]=sv[j];
                    sv[j]=t;
                }
            }
        }
       for(i=0;i<n;i++)
            printf("Mssv thu %d :%s\n ho ten:%s\n Diem toan:%.1f Diem ly:%.1f Diem hoa:%.1f\n",i+1,sv[i].mssv,sv[i].nam,sv[i].toan,sv[i].ly,sv[i].hoa);
    }
    
    void main(void)
    {
        char choice;
        int n;
        char tam[10];
       struct sinhvien sv[50];
        printf("Nhap vao so sinh vien:");
        gets(tam);
       n=atoi(tam);
       nhap(sv,n);
       clrscr();
       menu();
       while(choice!='0')
       {
           scanf("%c",&choice);
          switch(choice)
          {
             case'1':
             {
                 clrscr();
                menu();
                    xuat(sv,n);
                break;
             }
                case'2':
             {
                 clrscr();
                menu();
                    toanmax(sv,n);
                break;
             }
                case'3':
             {
                 clrscr();
                menu();
                    tbmax(sv,n);
                break;
             }
                /*case'4':
             {
                 clrscr();
                menu();
                    thukhoa(sv,n);
                break; 
             } */
                /*case'5':
             {
                 clrscr();
                menu();
                    rot(sv,n);
                break; 
             }  */
             /*case'6':
             {
                 clrscr();
                menu();
                sx(sv,n);
                break;  
             }*/
             case '4':
             {
                 clrscr();
                menu();
                sxms(sv,n);
            break; 
    
             }
             /*case'8':
             {
                 clrscr();
                menu();
                dau(sv,n);
                break;
             }*/
             /*case'9':
             {
                 clrscr();
                menu();
                cd(sv,n);
                break;
             } */
                /*case'0':
                 break;
          }  */
       }
    
    }
    getch();
    
    
    }
    
    
    
  10. thinkofluv New Member

    Số bài viết: 2
    Đã được thích: 0
    Điểm thành tích: 0
  11. small ant Well-Known Member

    Số bài viết: 2,827
    Đã được thích: 88
    Điểm thành tích: 48
    Giới tính: Nữ
    Giả sử cuối năm học cần trao khen thưởng cho sinh viên và cán bộ quản lý bộ môn. ĐK khen thưởng của sinh viên là ĐTB > 8 và năm sinh > 1980, thuộc khu vực TPHCM. ĐK khen thưởng của giảng viên là giáo viên thuộc loại A ( có ít nhất 1 bài báo nghiên cứu khoa học và có giờ giảng). Đk khen thưởng cán bộ quản lý là giảng viên loại A và lao động của bộ môn là Giỏi.

    Viết chương trình nhập, danh sách cán bộ và sinh viên.
    In ra danh sách cán bộ và sinh viên.
    In ra danh sách cán bộ và sinh viên được khen thưởng.

    Thừa kế theo sơ đồ sau:

    [IMG]
    [IMG]
    [IMG]


    Code chương trình như sau:
    Mình khuyên các bạn nên down file cpp về mà xem. Chứ post bài có mấy ký hiệu trong c++ là nó chuyển sang mấy hình cười hoặc không hiển thị

    Mã:
    //CHUONG TRINH QUAN LY KHEN THUONG SINH VIEN, CAN BO
    //THUC TAP C,C++ CUA THAY DAU TRONG HIEN


    #include
    #include
    #include
    #include
    class nguoi
    {
    protected:
    char hoten[20],qq[20];
    int ns;
    public:
    void nhap()
    {
    cout<<"\n Nhap Ho ten: ";
    gets(hoten);
    cout<<"\n Nhap nam sinh: ";
    cin>>ns;
    cout<<"\n Nhap que quan: ";
    gets(qq);
    }

    void ht()
    {
    cout<<"\n Ho ten: "<<
    cout<<"\n Nam sinh: "<<
    cout<<"\n Que quan: "<<
    }
    };

    class giaovien : public nguoi // thua ke tu lop nguoi
    {
    protected:
    char bm[15];
    int sbb,gg;

    public:
    void nhapgv()
    {
    nhap(); // do huong thua ke nen chuong trinh nhap lop nguoi se duoc chay
    cout<<"\n Nhap bo mon: ";
    gets(bm);
    cout<<"\n Nhap so bai bao: ";
    cin>>sbb;
    cout<<"\n Nhap gio giang: ";
    cin>>gg;
    }
    void htgv()
    {
    ht();// do huong thua ke nen chuong trinh hien thi lop nguoi se duoc chay
    cout<<"\n Bo mon: "<<
    cout<<"\n Gio Giang: "<<
    cout<<"\n So bai bao: "<<
    }
    };
    class canbo : public giaovien
    {
    char ld[15],cd[25];

    public:
    void nhapcb()
    {
    nhapgv();
    cout<<"\n Nhap loai lao dong cua bo mon: ";
    gets(ld);
    cout<<"\n Nhap chuc danh: ";
    gets(cd);
    }
    void htcb()
    {
    htgv();
    cout<<"\n Loai lao dong cua bo mon: "<<
    cout<<"\n Chuc danh: "<<
    }

    int ktcb()
    {
    if((sbb>0) && gg>0 && strcmp(ld,"Gioi")==0)
    return(1);
    else
    return(0);
    }
    };

    class sinhvien : public nguoi
    {
    char lop[20];
    float dtb;
    public:
    void nhapsv()
    {
    nhap();
    cout<<"\n Nhap lop : ";
    gets(lop);
    cout<<"\n Nhap diem trung binh: ";
    cin>>dtb;
    }

    void htsv()
    {
    ht();
    cout<<"\n Lop: "<<
    cout<<"\n Diem trung binh: "<<
    }
    int ktsv()
    {
    if((dtb>8) && (ns>1980) && strcmp(qq,"TPHCM")==0)
    return(1);
    else
    return(0);
    }
    };

    // chuonog trinh chinh
    void main()
    {
    canbo cb[20];
    sinhvien sv[20];
    int m,n,i;
    cout<<"\n \t -------------****CHUONG TRINH QUAN LY DUOC KHEN THUONG****-------------";
    cout<<"\n \t \t \t \t --oOowWw.SPKT.NEToOo-- \n\n";


    cout<<"\n ==>> NHAP THONG TIN CHO SINH VIEN ";
    cout<<"\n Nhap so luong sinh vien can quan ly: ";
    cin>>n;
    for(i=1;i<=n;i++)
    sv.nhapsv();

    cout<<"\n ==>>NHAP THONG TIN CHO CAN BO DUOC KHEN THUONG ";
    cout<<"\n Nhap so luong can bo can quan ly: ";
    cin>>m;
    for(i=1;i<=m;i++)
    cb.nhapcb();


    cout<<"\n ----------****DANH SACH SINHN VIEN****---------- ";
    for(i=1;i<=n;i++)
    sv.htsv();

    cout<<"\n ----------****DANH SACH CAN BO****---------- ";
    for(i=1;i<=m;i++)
    cb.htcb();


    //khai bao them bien tam de kiem tra co danh sach khen thuong hay khong
    int tam=0;
    cout<<"\n ----------****DANH SACH SINHN VIEN DUOC KHEN THUONG****---------- ";
    for(i=1;i<=n;i++)
    if(sv.ktsv()==1)
    {
    sv.htsv();
    tam=tam+1;
    };
    if(tam==0)
    cout<<"\n KHONG CO DANH SACH KHEN THUONG CUA SINH VIEN " ;


    //reset lai bien tam
    tam=0;
    //bat dau chay danh sach can bo khen thuong
    cout<<"\n ----------****DANH SACH CAN BO KHEN THUONG****---------- ";
    for(i=1;i<=m;i++)
    if(cb.ktcb()==1)
    {
    cb.htcb();
    tam=tam+1;
    };
    if(tam==0)
    cout<<"\n KHONG CO DANH SACH KHEN THUONG CUA CAN BO \n\n " ;

    cout<<"\n CHUC CAC BAN THI TOT \n\n " ;
    getch();
    }
    Hình chương trình chạy:


    Các bạn download cái file cpp ở dưới:

    Các file đính kèm:

  12. trangcandy1986 New Member

    Số bài viết: 1
    Đã được thích: 0
    Điểm thành tích: 0
    TIện đây cho mình hỏi bài này với nhé.
    Mình đang làm bài tập lớn thầy giao, nhưng làm đến chỗ này thì bị tắc, nghiên cứu hoài mà vẫn không hiểu được, có bạn nào biết thì giúp mình với?
    mình viết câu lệnh như sau :
    do
    {
    printf("Co mua ve buoi chieu khong?(c/k)\n");
    scanf("%c",&ck);
    }
    while ((ck!='c')||(ck!='k'));

    đến lúc nhập thì cho dù mình nhập ký tự gì thì vòng lặp nó vẫn chạy mãi mà không thoát được.
    Giúp mình với nhé!
  13. ninomaxx New Member

    Số bài viết: 51
    Đã được thích: 0
    Điểm thành tích: 0
    Bạn làm như vậy thì nhập kí tự gì nó cũng ko thoát ra đc là đúng rồi
    while ((ck!='c')||(ck!='k')); -->while ((ck!='c')&&(ck!='k'));
  14. TJIT New Member

    Số bài viết: 1
    Đã được thích: 0
    Điểm thành tích: 0
    mấy pạn giúp mình bài này nhé !!!
    Viết chương trình quản lý sinh viên theo yêu cầu sau:
    Mỗi sinh viên là một cấu trúc bao gồm:
    MSSV: kiểu chuỗi 6 kí tự
    MALOP: kiểu chuỗi 6 kí tự
    DIEMTB: kiểm float
    HOTEN: kiểu chuỗi 20 kí tự
    Mỗi lớp là một cấu trúc bao gồm:
    MALOP: kiểu chuỗi 6 kí tự
    KHOA: khóa học: kiểu số nguyên (năm nhập học, vd=2008)
    Danh sách lớp được lưu trong file LOP.txt theo cấu trúc như sau:
    Dòng 1: số lớp = n
    Dòng 2 đến dòng n+1 thông tin lớp: MALOP KHOA
    Danh sách các sinh viên được lưu trong 1 file sinhvien.txt có cấu trúc như sau:
    Dòng 1: số sinh viên = n
    Dòng 2 đến dòng n+1 thông tin sinh viên: MSSV MALOP DIEMTB HOTEN
    Viết chương trình
    a/ Đọc vào danh sách lớp và danh sách sinh viên từ 2 file trên
    b/ Thực hiện sắp xếp danh sách lớp theo Khóa từ năm lớn đến nhỏ
    c/ Thực hiện sắp xếp danh sách sinh viên theo Lớp đã sắp xếp ở câu a, và theo điểm trung bình của sinh viên từ cao đến thấp
    d/ Kết quả ghi ra 2 file LOPSORT.txt và SVSORT.txt tương ứng cho lớp và sinh viên

Chia sẻ trang này