统计字符串中数字出现的频度问题
时间:2011-11-28
来源:互联网
entered is: Hogeschool Enschede
output : 3314223331141223414
看是 每个字符下都对应他的频数;
而且 频数那一栏 很显然要放入一个数组 n[],输入的那个放在str[];
这是网上写的统计频数的函数 但我觉得不好 不适合我的程序要求
void detect(char s[])
{
char ch[MAX];/*记录出现的字符*/
int num[MAX]={0};/*记录每个字符出现的次数*/
int i,j,n=0;
for(i=0;s[i]!='\0';i++)
{
for(j=0;j<n;j++)
if(s[i]==ch[j]||(ch[j]>='a'&&ch[j]<='z'&&s[i]+32==ch[j])) break;/*判断该字符是否已经出现过*/
if(j<n)/*该字符出现过,对应的记数器num[j]加一*/
num[j]++;
else/*该字符是新出现的字符,记录到ch[j]中,对应计数器num[j]加一*/
{
if(s[i]>='A'&&s[i]<='Z')
ch[j]=s[i]+32;
else
ch[j]=s[i];
num[j]++;
n++;/*出现的字符的种类数加1*/
}
}
注 我要每个字符下都要对应他的频数 不管是出现过的还是没出现过的 怎么计算的 各位写个统计函数把
另 且最后放频数的数组应该是个指针,因为最后需要Output()来输出 谢谢大家了
output : 3314223331141223414
看是 每个字符下都对应他的频数;
而且 频数那一栏 很显然要放入一个数组 n[],输入的那个放在str[];
这是网上写的统计频数的函数 但我觉得不好 不适合我的程序要求
void detect(char s[])
{
char ch[MAX];/*记录出现的字符*/
int num[MAX]={0};/*记录每个字符出现的次数*/
int i,j,n=0;
for(i=0;s[i]!='\0';i++)
{
for(j=0;j<n;j++)
if(s[i]==ch[j]||(ch[j]>='a'&&ch[j]<='z'&&s[i]+32==ch[j])) break;/*判断该字符是否已经出现过*/
if(j<n)/*该字符出现过,对应的记数器num[j]加一*/
num[j]++;
else/*该字符是新出现的字符,记录到ch[j]中,对应计数器num[j]加一*/
{
if(s[i]>='A'&&s[i]<='Z')
ch[j]=s[i]+32;
else
ch[j]=s[i];
num[j]++;
n++;/*出现的字符的种类数加1*/
}
}
注 我要每个字符下都要对应他的频数 不管是出现过的还是没出现过的 怎么计算的 各位写个统计函数把
另 且最后放频数的数组应该是个指针,因为最后需要Output()来输出 谢谢大家了
作者: eaur999 发布时间: 2011-11-28
关注该贴
作者: shenchenman 发布时间: 2011-11-28
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28