Trang 1 trên tổng số 2 12 Cuối cùngCuối cùng
Từ 1 tới 10 trên tổng số 14 kết quả

Đề tài: trộn 2 mảng thành 1 mảng có phần tử xen kẽ với nhau

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

    Mặc định trộn 2 mảng thành 1 mảng có phần tử xen kẽ với nhau

    đây là code của em nhưng khi chạy nó báo lỗi debug erorr (hiện ra aborrt , retry)
    cho mình hỏi thêm là ký hiệu || có khác gì && ko
    C Code:
    1. #include <stdio.h>
    2. void tronmang(int a[],int na,int b[],int nb,int c[])
    3. {
    4.     int i,nc;
    5.     for(i=0,nc=0;i<na && i<nb;i++,nc+=2)
    6.     {
    7.         c[nc]=a[i];
    8.         c[nc+1]=b[i];
    9.     }
    10.     while(i<na)
    11.     {
    12.         c[nc++]=a[i++];
    13.     }
    14.     while(i<nb)
    15.     {
    16.             c[nc++]=b[i++];
    17. }
    18. }
    19. void nhap(int a[],int &n)
    20. {
    21.     printf("nhap so phan tu");
    22.  
    23.         scanf("%d",&n);
    24.         for(int i=0;i<n;i++)
    25.         {
    26.             printf("nhap phan tu mang [%d]",i);
    27.             scanf("%d",&a[i]);
    28.         }
    29. }
    30. void xuat(int a[],int n)
    31. {
    32. for(int i=0;i<n;i++)
    33.         {
    34.             printf("%d ",a[i]);
    35.         }
    36. }
    37.  
    38. void main()
    39. {
    40.     int a[10],na,nb,b[10],c[30];
    41.     nhap(a,na);
    42.     nhap(b,nb);
    43.     tronmang(a,na,b,nb,c);
    44.     xuat(c,na+nb);
    45. }
    Đã được chỉnh sửa lần cuối bởi killervip0 : 06-01-2012 lúc 09:33 PM.

  2. #2
    Ngày gia nhập
    01 2011
    Nơi ở
    -Mountain-
    Bài viết
    768

    Bài của bạn sai ở chỗ chưa biết nc là cái gì nhưng lại đi dùng nó
    Đã được chỉnh sửa lần cuối bởi beautifulsoul84hung : 06-01-2012 lúc 12:24 PM.
    Hướng dẫn C++: https://www.youtube.com/watch?v=BwLodoQdoY4&list=PL1c9Uxlo-mplJDRGdONNupgo5OCBTyGGn

  3. #3
    Ngày gia nhập
    07 2010
    Bài viết
    6

    hàm tronmang của bạn bị sai: bạn chưa khai báo số phần tử mảng c
    đùng thì phải :
    void tronmang(int a[],int na,int b[],int nb,int c[],int &nc)
    {
    ////////////////////
    ///////////////////////
    ///////////////////////
    }

  4. #4
    Ngày gia nhập
    07 2010
    Bài viết
    6

    ký hiệu || khác với && nha bạn :
    vd:
    - || sai khi cả 2 đều sai
    - && đúng khi cả 2 đều đúng

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

    cho mình hỏi thêm 1 chút :
    nếu như mình xài luôn hàm main như sau thì lại chạy tốt, nhưng nếu sử dụng hàm con như trên thì lại ko chạy đc.
    C Code:
    1. void main()
    2. {
    3.     int a[10],na,nb,b[10],c[30],vt,nc;
    4.     nhap(a,na);
    5.     nhap(b,nb);
    6.     int i;
    7.     for(i=0,nc=0;i<na && i<nb;i++,nc+=2)
    8.     {
    9.         c[nc]=a[i];
    10.         c[nc+1]=b[i];
    11.     }
    12.     while(i<na)
    13.     {
    14.         c[nc++]=a[i++];
    15.     }
    16.     while(i<nb)
    17.     {
    18.             c[nc++]=b[i++];
    19.     }
    20.     xuat(c,nc);
    21. }
    ai có thể sửa lại giùm mình hàm con trộn mảng đc ko.

    hỏi thêm là nếu dùng câu lệnh này thì hàm chạy đc
    C Code:
    1. for(i=0,nc=0;i<na && i<nb;i++,nc+=2)
    còn câu này thì ko đc
    C Code:
    1. for(i=0,nc=0;i<na || i<nb;i++,nc+=2)
    ai giải thích giùm mình cái. theo mình biết thì && là "đồng thời" , còn || có phải là "hoặc" ko

  6. #6
    Ngày gia nhập
    04 2008
    Nơi ở
    Bốn bề là nhà
    Bài viết
    703

    Mặc định trộn 2 mảng thành 1 mảng có phần tử xen kẽ với nhau

    Bác hỏi những câu quá sơ đẳng, tôi khuyên bác nên đọc sách kĩ trước khi hỏi.

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

    Trích dẫn Nguyên bản được gửi bởi G.Perelman Xem bài viết
    Bác hỏi những câu quá sơ đẳng, tôi khuyên bác nên đọc sách kĩ trước khi hỏi.
    kiêu thế..... em mới vào nghề thui mà...

  8. #8
    Ngày gia nhập
    12 2011
    Nơi ở
    TP HCM
    Bài viết
    3

    Trích dẫn Nguyên bản được gửi bởi killervip0 Xem bài viết
    kiêu thế..... em mới vào nghề thui mà...
    Vấn đề của bạn như thế này.Thông thường khi làm hàm con đối với mảng người ta thường khai báo mảng kèm số phần tử mảng nữa.
    Code:
    void tronmang(int a[],int na,int b[],int nb,int c[], int &nc);
    Bạn chú ý chỗ mình bôi đỏ nhé!,và chú rằng truyền tham trịtham biến khác nhau như thế nào?.

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

    Trích dẫn Nguyên bản được gửi bởi cauberong09 Xem bài viết
    Vấn đề của bạn như thế này.Thông thường khi làm hàm con đối với mảng người ta thường khai báo mảng kèm số phần tử mảng nữa.
    Code:
    void tronmang(int a[],int na,int b[],int nb,int c[], int &nc);
    Bạn chú ý chỗ mình bôi đỏ nhé!,và chú rằng truyền tham trịtham biến khác nhau như thế nào?.
    nhưng số phần tử nc này bằng na+nb nên ko cần phải ghi cũng vẫn chạy đc.

  10. #10
    Ngày gia nhập
    01 2011
    Nơi ở
    -Mountain-
    Bài viết
    768

    Trích dẫn Nguyên bản được gửi bởi killervip0 Xem bài viết
    nhưng số phần tử nc này bằng na+nb nên ko cần phải ghi cũng vẫn chạy đc.
    Những cái gì trong hàm mà bạn không lưu lại thì nó sẽ mất đi
    Nếu như chạy một chương trình lớn mà cái gì cũng giữ lại như bạn nghĩ thì quả thật là một vấn đề lớn
    Hướng dẫn C++: https://www.youtube.com/watch?v=BwLodoQdoY4&list=PL1c9Uxlo-mplJDRGdONNupgo5OCBTyGGn

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

  1. Tối ưu hóa cho bài kiểm tra mảng có âm duơng xen kẽ không
    Gửi bởi danielh trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 7
    Bài viết cuối: 08-12-2016, 09:37 PM
  2. Xen kẽ ngày tháng của dữ liệu SQL Server hoặc MySQL
    Gửi bởi xskzace trong diễn đàn Thắc mắc Microsoft SQL Server & Microsoft Access
    Trả lời: 0
    Bài viết cuối: 20-05-2013, 04:06 PM
  3. Lập trình C Sắp xếp dãy theo thứ tự lớn nhỏ xen kẽ
    Gửi bởi rikabui trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 4
    Bài viết cuối: 16-10-2011, 09:02 PM
  4. Bài tập C Sắp xếp chẵn lẻ xen kẽ tăng dần
    Gửi bởi Pop trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 13
    Bài viết cuối: 14-08-2011, 05:32 PM
  5. Trộn hai mảng chẵn lẽ xen kẽ với nhau
    Gửi bởi prince7seas trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 10
    Bài viết cuối: 21-07-2010, 11:56 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