Trang 1 trên tổng số 3 123 Cuối cùngCuối cùng
Từ 1 tới 10 trên tổng số 22 kết quả

Đề tài: đảo ngược mảng trong c!!!!!!!!

  1. #1
    Ngày gia nhập
    10 2008
    Bài viết
    0

    Mặc định đảo ngược mảng trong c!!!!!!!!

    các anh cho em hỏi cách làm bài tập đảo ngược một mảng trong c với!!!!
    e chỉ biết cách sắp xếp giảm dần với tăng dần thôi!!!!
    chứ sắp xếp ngược lại thì chưa nghĩ ra!!!!!!!
    WOMAN GET AND FORGET
    MAN GIVE AND FORGIVE

    http://img258.echo.cx/img258/7561/bthsiganimated9qj.gif

  2. #2
    Ngày gia nhập
    04 2008
    Bài viết
    0

    bài nay cũng dễ mà. bạn chịu khó suy nghĩ tí nhé. bữa nay đang vui, phá lệ, post code trả lời luôn nè, chứ bình thường là chỉ đưa thuật giải thôi đó.

    Code:
    void daomang(int array[],int n)   //n la so phan tu cua mang
    {
     for(int i=0;i<n/2;i++)
     {
       t=array[i];
       array[i]=array[n-1-i];
       array[n-1-i]=t; 
     }
    }

  3. #3
    Ngày gia nhập
    12 2006
    Nơi ở
    US
    Bài viết
    1,917

    Ngứa tay quá
    C++ Code:
    1. #include <iostream>
    2. #include <algorithm>
    3.  
    4. void rv( int* b, int* e ) {
    5.     for( int i1 = 0, i2 = e - b - 1; i1 < i2; ++i1, --i2 ) {
    6.         std::swap( *( b + i1 ), *( b + i2 ) );
    7.     }
    8. }
    9.  
    10. void pr( int x ) {
    11.     std::cout << x;
    12. }
    13.  
    14. int main() {
    15.     const int SIZE  = 5;
    16.     int ary[ SIZE ] = { 1, 2, 3, 4, 5 };
    17.     rv( ary, ary + 5 );
    18.     std::for_each( ary, ary + 5, pr );
    19.     return 0;
    20. }

  4. #4
    Ngày gia nhập
    10 2008
    Bài viết
    3

    Mấy bác Mod nhà mình giỏi nhưng có vẻ hơi chảnh. Người ta hỏi C, các bác cứ vác C++ với STL vào trả lời. Bạn ấy hỏi như thế thì chắc là mới học lập trình, đưa code vậy vào sao mà người ta hiểu được.

  5. #5
    Ngày gia nhập
    04 2008
    Bài viết
    1

    Trích dẫn Nguyên bản được gửi bởi jk2tuoi Xem bài viết
    các anh cho em hỏi cách làm bài tập đảo ngược một mảng trong c với!!!!
    e chỉ biết cách sắp xếp giảm dần với tăng dần thôi!!!!
    chứ sắp xếp ngược lại thì chưa nghĩ ra!!!!!!!
    Ok.
    Hãy trả lời câu hỏi sau nhé:
    1>Xuôi và ngược khác nhau như thế nào ?
    Xuôi : For(i=0;i<n;i++)
    ====>
    Ngược:For(i=n-1;i>=0;i--);
    2>Thử code xem nếu không được thì giải quyết tiếp

  6. #6
    Ngày gia nhập
    12 2006
    Nơi ở
    US
    Bài viết
    1,917

    Mặc định đảo ngược mảng trong c!!!!!!!!

    Mấy bác Mod nhà mình giỏi nhưng có vẻ hơi chảnh. Người ta hỏi C, các bác cứ vác C++ với STL vào trả lời. Bạn ấy hỏi như thế thì chắc là mới học lập trình, đưa code vậy vào sao mà người ta hiểu được.
    Sorry, tại ngồi làm bài tập Lý sao mà nó chán quá nên thư giãn tí thôi. Với lại do code trên cậu kia giúp đã đúng rùi nên tui post thêm 1 version cho vui thôi mà T_T.
    ps : cậu không cần coi code của tui làm gì, để 1 năm sau quay lại đọc cũng được.

  7. #7
    Ngày gia nhập
    09 2011
    Bài viết
    0

    Trích dẫn Nguyên bản được gửi bởi nguyenminhdanh Xem bài viết
    bài nay cũng dễ mà. bạn chịu khó suy nghĩ tí nhé. bữa nay đang vui, phá lệ, post code trả lời luôn nè, chứ bình thường là chỉ đưa thuật giải thôi đó.

    Code:
    void daomang(int array[],int n)   //n la so phan tu cua mang
    {
     for(int i=0;i<n/2;i++)
     {
       t=array[i];
       array[i]=array[n-1-i];
       array[n-1-i]=t; 
     }
    }
    bài của bạn không có lệnh printf thì nó in cái gì ra ngoài màn hình.với lại bài của bạn sai rồi

  8. #8
    Ngày gia nhập
    08 2011
    Bài viết
    2

    Trích dẫn Nguyên bản được gửi bởi typn1702 Xem bài viết
    bài của bạn không có lệnh printf thì nó in cái gì ra ngoài màn hình.với lại bài của bạn sai rồi
    Đây là hàm thực hiện việc đảo ngược thì cần gì pritnf đâu bạn, sai ở chỗ nào nhỉ

  9. #9
    Ngày gia nhập
    05 2011
    Nơi ở
    hà nội
    Bài viết
    0

    Trích dẫn Nguyên bản được gửi bởi typn1702 Xem bài viết
    bài của bạn không có lệnh printf thì nó in cái gì ra ngoài màn hình.với lại bài của bạn sai rồi
    đấy là hàm con mà. bạn muốn in ra màn hình thì phải gọi hàm trong main chứ!! bài của bạn kia đúng rồi!!

  10. #10
    Ngày gia nhập
    09 2011
    Nơi ở
    Huế
    Bài viết
    0

    Trích dẫn Nguyên bản được gửi bởi noodker Xem bài viết
    Ok.
    Hãy trả lời câu hỏi sau nhé:
    1>Xuôi và ngược khác nhau như thế nào ?
    Xuôi : For(i=0;i<n;i++)
    ====>
    Ngược:For(i=n-1;i>=0;i--);
    2>Thử code xem nếu không được thì giải quyết tiếp
    đúng như bác nói. chạy xuôi thì ++ còn đảo ngược thì -- rồi bỏ trong đó lệnh hiển thị thôi

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