求助:要求统计一行字符串中某单词出现的次数,要求字符串从键盘输入,并调用函数完成统计。如输入how are you ,统计are的次数,结果为1

zirandeai 2008-06-11 01:08:26
请高手帮忙,程序中请尽量使用简单语句,本人初学者,谢谢
...全文
1565 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
luxiaoxun 2008-06-16
  • 打赏
  • 举报
回复
#include "stdio.h"
#include "string.h"
int main()
{
char ch;
char s[1000];
char word[1000][20]; /* 最多存1000个不同单词,每个单词在20个字符内。 */
int count_word[1000]={0}; /* 每个单词对应个数 */
int i=0,j=0,k=0,flag=2,total=0;
double percent; /* 每个单词出现频率 */
gets(s);
strcat(s,".");
char *p=s;
while(*p)
{
ch=*p;
if(ch>='a'&&ch<='z'||ch>='A'&&ch<='Z')
{
if(ch>='A'&&ch<='Z') ch+=32;
flag=0;
word[i][j]=ch;
j++;
}
else flag++;
if(flag==1)
{
total++;
word[i][j]='\0';
count_word[i]++;
for(k=0;k<i;k++)
if(strcmp(word[i],word[k])==0)
{
count_word[k]++;
count_word[i]=0;
i--; break;
}
i++;
j=0;
}
p++;
}

printf("result----------------------------------------");
for(k=0;k<i;k++)
{
printf("\n%-20s",word[k]);
printf("%-10d",count_word[k]);
percent=100.0*count_word[k]/total;
printf("%.2f",percent);
}
printf("\n\nThis text has %d word(s).",total);
printf("\nAnd here has %d different word(s).",i);
return 0;
}
能用map就非常简单了
mwx285 2008-06-16
  • 打赏
  • 举报
回复
学习了,strstr不错,又长见识类
stars_eyes 2008-06-11
  • 打赏
  • 举报
回复
没注意要求在题目上,重来

#include"stdio.h"
void main()
{
char str1[200],str2[20];
void count(char str1[],char str2[]);
gets(str1);
gets(str2);
count(str1,str2);
}

void count(char str1[],char str2[])
{
int i,j,num=0;
for(i=0,j=0;str1[i]!='\0';i++)
{
while(str1[i]==str2[j])
{
if(str1[i]=='\0')
{
num++;
break;
}
i++;
j++;
}
if(str1[i]==' '&&str2[j]=='\0')
num++;
j=0;
}
printf("%d\n",num);
}
stars_eyes 2008-06-11
  • 打赏
  • 举报
回复
#include"stdio.h"
void main()
{
char str1[200],str2[20];
gets(str1);
gets(str2);
int i,j,num=0;
for(i=0,j=0;str1[i]!='\0';i++)
{
while(str1[i]==str2[j])
{
if(str1[i]=='\0')
{
num++;
break;
}
i++;
j++;
}
if(str1[i]==' '&&str2[j]=='\0')
num++;
j=0;
}
printf("%d\n",num);
}
K行天下 2008-06-11
  • 打赏
  • 举报
回复
随便写一个,统计输入的第一个单词出现的次数:
如果输入:

how are you howhowhow
how出现的次数是:4


#include <stdio.h>
#include <string.h>

int wordStatistic(char* line, char* word);
int main()
{
char s[1024];
char l[20];
char *p = s, *q = l;
int count;
while( (*q++ = *p++ = getchar()) != '\n')
{
if(*(q-1) == ' ')
*(q-1) = '\0';
}
*p = '\0';

count = wordStatistic(s,l);
printf("%s出现的次数是:%d\n",l,count);
getchar();
return 0;
}
int wordStatistic(char* line, char* word)
{
int count = 0;
while ( line = strstr(line, word) )
{
line++;
count++;
}
return count;
}



blh 2008-06-11
  • 打赏
  • 举报
回复
strstr
渭河流域位于国黄河游地区,是黄河的重要一级支流流域,地理范围主要涵盖陕西省部、甘肃东部和宁夏部分地区。该流域自西向东延伸,总长约818公里,流域面积广阔,人口密集,是我国重要的农业与工业带,同时也是西北地区经济、文化与生态发展的核心区域之一。渭河流域水系发育完善,除干流外,还包括泾河、洛河、沣河、滈河等多条支流,构成了完整的河网体系,对黄河流域的水资源调配与生态安全具有重要意义。 本数据集提供了渭河流域矢量边界及河流分布的标准化shp文件,包含以下文件: (1)可编辑MXD文件:可直接在 ArcGIS 打开,用户可进行二次编辑、专题制图及空间分析,方便科研、教学与管理应用。 (2)标准SHP文件:包含渭河流域边界矢量数据以及干流与主要支流的矢量化河流线条,属性表附带河流名称、流域隶属等信息,便于查询与叠加分析。 (3)标准成图TIF文件:输出高清、规范的地图成果,能够直观展示渭河流域整体边界与内部河流分布格局,可用于汇报、展示与出版。 本资源可广泛应用于流域水资源管理、生态环境保护、土地利用研究、洪涝灾害评估等领域,同时也能为流域综合治理、生态修复规划、水文模拟与地理建模提供基础支撑。通过与其他数据(如DEM、土地覆盖、气象数据)叠加使用,还能开展更加深入的多源数据分析,为黄河流域高质量发展与区域生态安全提供科学依据。
一、商户信息管理模块 商户入驻与审核 商户在线提交入驻申请,上传营业执照、经营许可证、卫生许可证(餐饮类)等资质文件,填写基本信息(商户名称、经营范围、地址、联系方式、营业时间等)。 景区管理员对申请进行审核,通过后生成唯一商户编号,商户可登录系统完善详情(店铺简介、环境照片、特色产品等)。 商户分类与标签管理 按经营类型分类:餐饮住宿(民宿、餐馆)、旅游商品(手工艺品、特产店)、体验项目(骑马、漂流)、便民服务(超市、药店)等。 为商户添加特色标签(如 “清真餐饮”“亲子友好”“网红打卡地”),便于游客精准筛选。 商户信息维护 商户可更新店铺状态(营业 / 暂停 / 歇业)、修改营业时间、发布临时公告(如 “今日特价活动”)。 管理员可查看商户运营数据,对违规商户进行警告、限期整改或暂停合作处理。 二、商户运营监管模块 商品与服务管理 商户上传商品 / 服务信息(名称、价格、规格、图片),餐饮类需标注食材来源、口味特色;体验类需注明安全须知、时长。 支持价格调整记录,系统自动留存价格变动日志,便于监管部门核查是否存在乱收费现象。 游客消费与投诉处理 对接支付系统,记录游客在商户的消费数据(匿名化处理,仅统计交易金额、频次)。 游客可通过系统提交对商户的投诉(服务态度、商品质量、价格问题等),上传凭证(照片、聊天记录),系统自动通知商户限期回应,管理员跟踪处理结果。 评分与信用管理 游客消费后可对商户进行星级评分(1-5 星)及文字评价,评价内容需经管理员审核后展示。 系统根据评分、投诉处理率、违规记录生成商户信用等级,信用过低的商户将被限制曝光或强制整改。 三、景区资源与活动管理 商户资源调度 针对景区内共享资源(如摊位、停车场、公共休息区),商户可在线申请使用时段,管理员审核分配,避免资源冲突。 记录资源使用情况,按规定收取管理费,生成缴费提醒与票据。

33,320

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 新手乐园
社区管理员
  • 新手乐园社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧