Từ 1 tới 10 trên tổng số 10 kết quả

Đề tài: Xin được hướng dẫn đọc tệp vào mãng với độ dài khác nhau

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

    Mặc định Xin được hướng dẫn đọc tệp vào mãng với độ dài khác nhau

    Chào các bạn.
    Mình có gặp một vấn đề trong cách đọc tệp nhờ các bạn chỉ giúp với.
    Bình thường thì mình thường chỉ biết nhập xuất từ bàn phím nên không biết về đọc tệp cho lắm.
    Vấn đề như thế này :
    Nếu đọc tệp mảng 2 chiều thì mình làm được nhưng với mẫu tệp sau thì mình không nghỉ ra cách nào
    Code:
    5  // chỉ số hàng của tệp
    1 2 4 5 5 3
    1 4 6 3
    1 5 
    1 5 6 8 3 8 37 7
    3 6 5 5 5
    .

    vì số lượng các phần tử trong mỗi hàng là khác nhau nên mình không biết làm thế nào. Nhờ các bạn chỉ giúp mình với
    Cảm ơn các bạn nhiều

  2. #2
    Ngày gia nhập
    12 2010
    Bài viết
    115

    ý của bạn là đưa tất cả các phần tử trong tệp vào cùng một mảng phải không?Nếu vậy thì bạn cứ đọc từng lần lượt từng ký tự trong file rồi gán cho từng phần tử trong mảng.Bạn vào đây tham khảo thêm
    http://forums.congdongcviet.com/show...nhap+xuat+file

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

    Bạn có thể nói rõ giùm mình được không. yêu cầu của mình như trên đó. mình cảm thấy ý của mình rỏ rồi mà. bạn giúp mình với. Bạn nào biết thì cho mình code thử luôn nhé. cảm ơn các bạn nhiều.

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

    Dùng vòng while hoặc do while để lặp khi ko biết rõ số lần lặp.
    Dấu hiệu lặp là kí tự xuống dòng.
    Dấu hiệu kết thúc là eof
    Hướng dẫn C++: https://www.youtube.com/watch?v=BwLodoQdoY4&list=PL1c9Uxlo-mplJDRGdONNupgo5OCBTyGGn

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

    bạn có thể cho mình code được không. mình không hiểu lưu vào mảng ntn cả.

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

    Mặc định Xin được hướng dẫn đọc tệp vào mãng với độ dài khác nhau

    rảnh rỗi ngồi demo đoạn code:

    C Code:
    1. /*
    2. file.txt
    3.  
    4. 5
    5. 1 2 4 5 5 3
    6. 1 4 6 3
    7. 1 5
    8. 1 5 6 8 3 8 37 7
    9. 3 6 5 5 5
    10. */
    11. #include <stdio.h>
    12. #define MAX 100
    13. main()
    14. {
    15.     FILE *pf = fopen("file.txt", "r");
    16.     int count = 0;
    17.     int a[MAX];
    18.    
    19.     if(pf == NULL)
    20.     {
    21.         printf("File not found\n");
    22.     }else
    23.     {
    24.         while(!feof(pf))
    25.         {
    26.             fscanf(pf, "%d%*c", &a[count]);
    27.             //printf("%d ", a[count] );
    28.             count++;
    29.         }
    30.                 printf("File was read success!\n");
    31.     }
    32.     fclose(pf);
    33. }

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

    Mình không hiểu code lắm. bạn nào hiểu giải thích giùm mình với. mình tự học nên chưa hiểu hết code. chỉ biết sơ sơ thôi.
    Code:
    while(!feof(pf))
            {
                fscanf(pf, "%d%*c", &a[count]);
                //printf("%d ", a[count] );
                count++;
            }
    đoạn này mình không hiểu ai giúp với

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

    %d%*c mục đích của nó là lấy giá trị của một số nguyên rồi bỏ qua một ký tự, vì trong mẫu bạn đưa các dữ liệu được ngăn cách vừa bằng space vừa bằng newline nên phải dùng %*c để bỏ qua nó, cái này được gọi là delimiter.

  9. #9
    Ngày gia nhập
    11 2010
    Nơi ở
    Black Hole
    Bài viết
    824

    đọc từng dòng ra rồi dùng atoi()
    mọi chi tiếc xin liên hệ http://www.cplusplus.com/reference/c.../cstdlib/atoi/
    Come as guest...... stay as family......... because we're smiling together.

  10. #10
    Ngày gia nhập
    11 2010
    Bài viết
    49

    Cảm ơn các bạn nhiều. mình cố gắng đọc thêm đã. hôm qua vừa học bài đầu của môn LTCS. hãi thật. đúng là biển trời mênh mong.

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

  1. Lập trình C++ bit shifting? kết quả binary y hệt nhau nhưng cout lại khác nhau
    Gửi bởi quano1 trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 11
    Bài viết cuối: 10-05-2016, 10:28 AM
  2. Xem giúp mình 2 vòng lặp giống nhau nhưng kết quả khác nhau
    Gửi bởi anhkhoadn trong diễn đàn Nhập môn lập trình C/C++
    Trả lời: 3
    Bài viết cuối: 06-11-2013, 12:57 AM
  3. fptaptech và cncaptech giống nhau hay khác nhau?
    Gửi bởi lqthinh92 trong diễn đàn Đào tạo CNTT
    Trả lời: 3
    Bài viết cuối: 16-08-2013, 12:30 AM
  4. Database Hai câu truy vấn giống nhau(logic) mà kết quả lại khác nhau??
    Gửi bởi kqphu trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 2
    Bài viết cuối: 15-10-2011, 11:50 AM
  5. Kết Quả khác nhau ở những lần chạy khác nhau
    Gửi bởi llvllrSi trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 11
    Bài viết cuối: 15-12-2010, 01:26 AM

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