读取文件返回行数C语言代码
时间: 2023-08-18 18:54:15 浏览: 87
可以使用以下C语言代码读取文件并返回行数:
```c
#include <stdio.h>
int countLines(FILE *file) {
int count = 0;
char c;
while ((c = fgetc(file)) != EOF) {
if (c == '\n') {
count++;
}
}
// 如果文件不以换行符结尾,则需要额外增加一行计数
if (ftell(file) > 0) {
count++;
}
return count;
}
int main() {
FILE *file;
char filename[100];
printf("请输入文件名:");
scanf("%s", filename);
file = fopen(filename, "r");
if (file == NULL) {
printf("无法打开文件!\n");
return 1;
}
int lines = countLines(file);
printf("文件 %s 中的行数为:%d\n", filename, lines);
fclose(file);
return 0;
}
```
这段代码首先通过 `fopen` 函数打开文件,然后使用 `fgetc` 函数逐个读取文件字符,当读取到换行符时,行数加一。最后,根据文件的结束位置判断文件是否以换行符结尾,如果不是,则额外增加一行计数。最后输出文件名和行数。请记得在使用代码时,替换文件名的输入部分以匹配您的实际需求。
阅读全文