/*编写函数 void count(char a[],char w[][10],int n,int b[]).功能是:统计w指向的数组中的n个单词在a指向的字符串中各自出现的次数(将非字符字符看作单词分割符),将统计结果依次保存在b指向的数组中*/
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#define N 10
void count(char a[],char w[][10],int n,int b[])
{
int count = 0; //统计单词出现的次数
int count1 = 0; //统计b数组的长度
int i = 0;
int j = 0;
char *ptr = a;
for(j = 0;j < n;j++)
{
while(*ptr)
{
if(strncmp(ptr,w[j],strlen(w[j])) == 0)
{
count++;
ptr += strlen(w[j]);
}
else
{
ptr++;
}
}
b[count1] = count;
count1++;
count = 0;
ptr = ptr-strlen(a);
}
for(i = 0;i < count1;i++)
{
printf("%d ",b[i]);
}
printf("\n");
}
int main()
{
char a[100] = {0};
char w[10][10] = {0};
int b[N] = {0}; //存放统计结果
int n = 0; //统计单词的个数
int i = 0;
printf("please input string a:\n");
scanf("%s",a);
printf("please input n:\n");
scanf("%d",&n);
printf("please input string w:\n");
for(i = 0;i < n;i++)
{
scanf("%s",w[i]);
}
count(a,w,n,b);
return 0;
}
编写函数 void count(char a[],char w[][10],int n,int b[]).功能是:统计w指向的数组中的n个单词在a指向的字符串中各自出现的次数(将非字符字符看作单词分割
最新推荐文章于 2021-05-20 02:30:32 发布