思路:打开文件,循环读文件fgets(buf,32,fp);只要有\n就len++
步骤:
1.只读打开文件,
2.循环获取文件每行的信息,判断是否有换行,
只要检测到了换行符,就说明这一行有字符,继续检测下一行
每检测一行,行数 +1
#include <stdio.h>
#include <string.h>
int main(int argc, char const *argv[])
{
char buf[99] = ""; // 暂存获取的字符串
if (argc != 2)
{
printf("format: %s<filename>\n", argv[0]);
return -1;
}
// 打开文件
FILE *fp = fopen(argv[1], "r");
if (fp == NULL)
{
perror("fopen error");
return -1;
}
// 循环获取,
int sum = 0;
while (fgets(buf, 99, fp) != NULL)
{
if (buf[strlen(buf) - 1] == '\n') // 判断是否有换行
{
sum++;
}
}
printf(" %d %s \n", sum, argv[1]);
return 0;
}