zoukankan      html  css  js  c++  java
  • 统计文本中字母的频次(不区分大小写)

    #define _CRT_SECURE_NO_WARNINGS
    #include <stdio.h>
    #include <stdlib.h>
    #include <string.h>
    #define MAX_NUM 10240
    
    void count(char* n)
    {
    	int i = 0, s[26] = { 0 };
    	while (n[i] != NULL)
    	{
    		if (n[i] >= 'A' && n[i] <= 'Z')
    		{
    			n[i] += 32;
    			s[n[i] - 'a']++;
    			i++;
    		}
    		else if (n[i] >= 'a' && n[i] <= 'z')
    		{
    			s[n[i] - 'a']++;
    			i++;
    		}
    		else
    			i++;
    	}
    
    	for (i = 0; i < 26; i++)
    	{
    		printf("%c出现:%d次
    ", (char)(i + 'a'), s[i]);
    	}
    }
    int main() {
    	char buf[MAX_NUM];			//字符缓冲区
    	FILE* fp;
    	//fopen("doc.txt", "r+"),读取文本中的内容
    	if ((fp = fopen("doc.txt", "r+")) == NULL) {
    		perror("the file fail to read");
    		exit(1);
    	}
    	while (!feof(fp) && !ferror(fp)) {	//文件读取结束或出错则退出
       //while(fgets(buf,MAX_NUM,fp) != NULL)
    		fgets(buf, MAX_NUM, fp);//每次读取一行或者MAX_NUM个字符
    		printf("内容为:%s 
    ", buf);
    		count(buf);
    	}
    	fclose(fp);				//关闭文件
    	return 0;
    }
    

     

    作者: Pam

    出处: https://www.cnblogs.com/pam-sh/>

    关于作者:网安在读

    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出, 原文链接 如有问题, 可邮件(mir_soh@163.com)咨询.

  • 相关阅读:
    增加文章
    网站之注册
    C#常用的引用
    Session.Abandon和Session.Clear有何不同 (转)
    C#文件路径的写法
    UpdatePanel的用法详解
    [转]asp:ScriptManager
    Git 常用命令
    AJAX请求 $.post方法的使用
    a 标签中调用js的几种方法
  • 原文地址:https://www.cnblogs.com/pam-sh/p/13941989.html
Copyright © 2011-2022 走看看