Trang 2 trên tổng số 2 Đầu tiênĐầu tiên 12
Từ 11 tới 15 trên tổng số 15 kết quả

Đề tài: Hỏi về nhập sinh viên

  1. #11
    Ngày gia nhập
    10 2006
    Nơi ở
    In Your Bugs
    Bài viết
    823

    Mặc định Hỏi về nhập sinh viên

    Không hiểu nên nói thế nào nữa !

    Hay là cậu đưa cái source lên ha ?
    Theo kidkid nghĩ thì chỉ việc coi thằng nào hợp vị trí cần chèn thì hoán vị nó qua .thế thôi ?

  2. #12
    Ngày gia nhập
    03 2007
    Nơi ở
    Nhà hát của những giấc mơ
    Bài viết
    33

    giả sử có :
    sinhvien a[2];
    a[0].name="A";
    a[0].diem=10;
    a[0].masinhvien=1;

    a[0].name="B";
    a[1].diem=6;
    a[1].masinhvien=2;

    Thấy B thấp điểm hơn A bây giờ đổi vị trí sắp xếp của A và B như thế nào

    Code :

    #include <iostream.h>
    #include <conio.h>
    class sv
    {
    public:
    char name[40];
    int stt;
    float dtb;
    void inra();
    void cinn();
    };
    void sv::inra()
    {
    cout << "SV " << name << " STT " << stt << " DTB " << dtb << endl;
    }
    void sv::cinn()
    {
    cout << "SV : ";cin >> name; //Nếu dùng gets(name) thì cũng thế
    cout << "STT : "; cin >> stt;
    cout << "DTB : "; cin >> dtb;
    }
    int main()
    {
    int n;
    cout << "Nhap so luong SV can them : n = ";cin >> n;
    sv a[n];
    for(int i=0;i<n;i++)
    {
    a[i].cinn();
    }
    int j;
    float bandau;
    for(int i=1;i<n;i++)
    {
    bandau=a[i].dtb;
    for(j=i;j>0 && a[j-1].dtb>bandau;j--)
    {
    a[j].dtb=a[j-1].dtb;
    }
    a[j].dtb=bandau;
    }
    for(int i=0;i<n;i++)
    {
    a[i].inra();
    }
    getch();
    }

    Cái này mới chỉ đổi điểm của các sinh viên theo thứ tự tăng dần chứ chưa sắp xếp sinh viên theo đúng điểm đã nhập ban đầu

  3. #13
    Ngày gia nhập
    03 2007
    Nơi ở
    Nhà hát của những giấc mơ
    Bài viết
    33

    Trích dẫn Nguyên bản được gửi bởi iamvtn Xem bài viết
    Cậu dùng
    cin.ignore(); để xóa bộ đệm rồi
    cin.getline(xâu,số ký tự);

    ví dụ
    Code:
    char ten[30];
    cout<<"Nhap vao ten ";
    cin.ignore();
    cin.getline(ten,30);
    Bạn có thể giải thích cho mình hiểu về cin.ignore(); được ko

  4. #14
    Ngày gia nhập
    04 2007
    Bài viết
    16

    Nếu A thấp điểm hơn B
    Csinhvien temp = A;
    A = B;
    B = temp;

    hoan vi chỉ có vậy thôi

  5. #15
    Ngày gia nhập
    03 2007
    Nơi ở
    Nhà hát của những giấc mơ
    Bài viết
    33

    sau một hồi mày mò cũng đã ra

    Tại sao dùng hàm doithutu(sv x,sv y) lại ko đổi được nhỉ

Các đề tài tương tự

  1. Bài tập C nhập vào tên sinh viên gồm.và sắp xếp tên sinh viên tăng dần theo danh sách đả nhập
    Gửi bởi nghiapro2589 trong diễn đàn Nhập môn lập trình C/C++
    Trả lời: 1
    Bài viết cuối: 26-05-2013, 08:23 AM
  2. Quản lí sinh viên bằng stack dùng danh sách liên kết. Làm sao để nhập nhiều sinh viên?
    Gửi bởi hoainamken trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 3
    Bài viết cuối: 24-08-2011, 10:34 AM
  3. Trả lời: 9
    Bài viết cuối: 14-06-2011, 07:38 PM
  4. Kỹ thuật C Nhập vào điểm Mã Sinh viên, Họ Tên Sinh Viên, Điểm Toán , Điểm Lý, Điểm Hóa.
    Gửi bởi phanvanngoc trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 5
    Bài viết cuối: 26-04-2011, 10:10 PM
  5. Gọi 1 sinh viên trong 1 dãy sinh viên nhập vào. giúp em với
    Gửi bởi th1406dnquan trong diễn đàn Nhập môn lập trình C/C++
    Trả lời: 2
    Bài viết cuối: 08-03-2011, 12:16 PM

Quyền hạn của bạn

  • Bạn không thể gửi đề tài mới
  • Bạn không thể gửi bài trả lời
  • Bạn không thể gửi các đính kèm
  • Bạn không thể chỉnh sửa bài viết của bạn