Bible.txt_1.标点变空格_大写转小写2.统计字符_行数_单词个数3.统计单词词频_及前十高频词

把英文文本中的标点符号用空格替换

https://blog.csdn.net/bxyill/article/details/6522478

#include <iostream>

#include <string>
#include <cctype>
#include <fstream>
#include <vector>
#include <sstream>
using namespace std;
void main()
{
fstream inFile;
inFile.open("d://infile.txt");
vector<string> vec;
string line,result;
while(getline(inFile , line))
{
for(string::size_type index = 0; index != line.size(); index++)
{
if(ispunct(line[index]))
{
result = result + " ";
}
else
{
result = result + line[index];
}
}
vec.push_back(result);
result.clear();
}
fstream outFile;
outFile.open("d://outfile.txt",ios::out);
for(vector<string>::iterator p = vec.begin();p != vec.end() ;++p)
{
outFile << (*p) <<endl;
}
outFile.close();
inFile.close();
}
--------------------- 
作者:bxyill 
来源:CSDN 
原文:https://blog.csdn.net/bxyill/article/details/6522478 
版权声明:本文为博主原创文章,转载请附上博文链接!

https://zhidao.baidu.com/question/177829287485569044.html

C语言程序,读取一个英文txt文件后统计行数、单词数、字符数和标点数。

#include <stdio.h>
int main()
{
FILE *fp;
int line=1,str,word,pu,ch;
int g;
if((fp=fopen("c:\\file.txt","r"))==NULL)
{
printf("没有检测到文件\n");
return;
}
ch=fgetc(fp);
str++;
while(ch!=EOF)
{
printf("%c",ch);
if(ch=='\n')
{
line++;
}
else if(ch==' ' || ch==',')
{
word++;
if(ch==',')
{
g++;
}
}
str++;
ch=fgetc(fp);
}
word++;
printf("一共有:%d行 %d个单词 %d个字符 %d个标点符号\n",line,word,str,g);
fclose(fp);
}

https://zhidao.baidu.com/question/1174611434783017379.html?fr=iks&word=%D3%A2%CE%C4txt%CE%C4%BC%FE+%B5%A5%B4%CA%B4%CA%C6%B5++c%D3%EF%D1%D4+BIbie&ie=gbk

https://blog.csdn.net/u011680118/article/details/44851337

C语言程序,读取一个英文txt文件后统计词频

#include "stdio.h"
#include "stdlib.h"
#include "string.h"
typedef struct SWord
{
char word[201];
int  count;
struct SWord* next;
}SWord;
 
void Add(SWord* Head,char* str)
{
SWord* tW;
SWord* p = Head;
while(1)
{
if (strcmp(p->word,str)==0)
{
p->count++;
return;
}
else
{
if (p->next != NULL)
{
p = p->next;
}
else
{
tW = (SWord *)malloc(sizeof(SWord));
memset(tW,0,sizeof(SWord));
sprintf(tW->word,"%s",str);
tW->count++;
p->next = tW;
return;
}
}
}
 
}
void Delete(SWord* Head)
{
SWord* tW;
SWord* pPrev = Head;
while(1)
{
if (pPrev!=NULL)
{
tW = pPrev->next;
free(pPrev);
pPrev = tW;
}
else
{
break;
}
}
 
}
void Disp(SWord* Head)
{
SWord* pWord;
for (pWord = Head->next;pWord!=NULL;pWord = pWord->next)
{
printf("%s:%d\n",pWord->word,pWord->count);
}
}
 
void main()
{
FILE* fp;
char str[201];
SWord * Head;
Head = (SWord *)malloc(sizeof(SWord));
memset(Head,0,sizeof(SWord));
fp = fopen("in.txt","rb");
while(fscanf(fp,"%s",str)!=EOF)
{
Add(Head,str);
}
fclose(fp);
Disp(Head);
Delete(Head);
}

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值