编写一个函数int charnum(char fn[10]),该函数以只读方式打开文件fn,通过统计,返回文件中字符的个数,请使用while循环实现计数功能。
注意:部分源程序已存在文件test7_2.cpp中。
请勿修改主函数main和其他函数中的任何内容,仅在函数charnum的花括号中填写若干语句。
文件test7_2.cpp的内容如下:
#include<iostream.h>
#include<fstream.h>
#include<stdlib.h>
int charnum(char fn[10]);
void main()
int num;
num=charnum("abc.txt");
cout<<"num="<<num<<endl;
int charnum(char fn[10])
参考答案:
int charnum(char fn[10])
{
fstream file;
file.open(fn,ios::in);
if(!file)
{
cout<<"abc.txt can’t open",<<endl;
abort();
}
char ch;
int i=O;
while(!file.eof())
{
file.get(ch);
i++;
}
file.close();
return i-1;
}
解析: 本题主要考查考生对文件相关操作的熟练程度。首先先定义文件流类的变量,然后使用该对象的open方法打开一个文件,接着使用while循环和getch方法每次读入一个字符并统计字符个数,最后使用close方法关闭文件,返回i值。