Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Lập Trình C

Chương trình C đếm số dòng trong file


Mở file chế độ đọc. Nếu file tồn tại, đếm số dòng. Nếu không tồn tại, báo lỗi.

File là tập hợp bản ghi hoặc vị trí lưu trữ vĩnh viễn trên ổ cứng.

Các thao tác file

  • Đặt tên file
  • Mở file
  • Đọc file
  • Ghi file
  • Đóng file

Cú pháp mở file

FILE *File_pointer;  // Ví dụ: FILE *fptr;
File_pointer = fopen("File_name", "mode");
// Ví dụ:
fptr = fopen("sample.txt", "r");
FILE *fp = fopen("sample.txt", "w");

Chương trình 1: Đếm dòng file có sẵn

#include <stdio.h>
#define FILENAME "Employee Details.txt"

int main() {
    FILE *fp;
    char ch;
    int linesCount = 0;
    
    fp = fopen(FILENAME, "r");
    if (fp == NULL) {
        printf("File \"%s\" không tồn tại!!!\n", FILENAME);
        return -1;
    }
    
    while ((ch = getc(fp)) != EOF) {
        if (ch == '\n') linesCount++;
    }
    fclose(fp);
    printf("Tổng số dòng: %d\n", linesCount);
    return 0;
}

Kết quả chương trình 1

Tổng số dòng: 3
Lưu ý: file Employee Details.txt chứa:
Pinky 20 5000.000000
Tổng 3 dòng

Chương trình 2: Tạo file mới rồi đếm dòng

#include <stdio.h>
#define FILENAME "sample.txt"

int main() {
    FILE *fp;
    char ch;
    int linesCount = 0;
    
    // Tạo file ghi
    fp = fopen(FILENAME, "w");
    printf("Nhập văn bản (Ctrl+Z kết thúc):\n");
    while ((ch = getchar()) != EOF) {
        fputc(ch, fp);
    }
    fclose(fp);
    
    // Đọc đếm dòng
    fp = fopen(FILENAME, "r");
    if (fp == NULL) {
        printf("File \"%s\" không tồn tại!!!\n", FILENAME);
        return -1;
    }
    while ((ch = getc(fp)) != EOF) {
        if (ch == '\n') linesCount++;
    }
    fclose(fp);
    printf("Tổng số dòng: %d\n", linesCount);
    return 0;
}

Kết quả chương trình 2

Nhập văn bản (Ctrl+Z kết thúc):
Hi welcome to Tutorials Point
C Programming Question & answers
^Z
Tổng số dòng: 2