编写函数void count(char a[],char w[][10],int n,int b[])。功能是:统计w指向的数组中的n个单词在a指向的字符串中各自出现的次数(将非字母字符看作单词分
2017-02-05 14:19
806 查看
编写函数void count(char a[],char w[][10],int n,int b[])。功能是:统计w指向的数组中的n个单词在a指向的字符串中各自出现的次数(将非字母字符看作单词分割符),拧将统计结果依次保存在b指向的数组中。
/*****************************************************
copyright (C), 2016-2017, Lighting Studio. Co., Ltd.
File name:
Author:luoye Version:0.1 Date:
Description:
Funcion List:
*****************************************************/
#include <stdio.h>
#include <string.h>
void count(char a[],char w[][10],int n,int b[])
{
int i, j, k;
int strlen_1 = strlen(a);
int strlen_2
; //w数组中每个子串的长度
int count = 0;
for( i = 0; i < n; i++) //计算每个子串的长度
{
strlen_2[i] = strlen(w[i]);
}
for( k = 0; k < n; k++)
{
count = 0;
for( i = 0; i <strlen_1-strlen_2[k]+1; i++ )
{
for( j = 0; j < strlen_2[k]; j++)
{
if( w[k][j] != a[i+j]) //如果主串和子串不用 则跳出循环
{
break;
}
}
if( j == strlen_2[k]) //若一直没有跳出循环 则主串和子串有相同的部分
{
count++;
}
}
b[k] = count; //储存每个子串的个数
}
}
int main()
{
char a[] = "my name is ,book apple my name name.";
char w[5][10] = { "my"," name"," is ","book"," apple "};
int b[5]={0};
int i;
count(a,w,5,b); //调用函数
for( i = 0; i < 5; i++)
{
printf("%s:%d\n",w[i],b[i]);
}
return 0;
}
/*****************************************************
copyright (C), 2016-2017, Lighting Studio. Co., Ltd.
File name:
Author:luoye Version:0.1 Date:
Description:
Funcion List:
*****************************************************/
#include <stdio.h>
#include <string.h>
void count(char a[],char w[][10],int n,int b[])
{
int i, j, k;
int strlen_1 = strlen(a);
int strlen_2
; //w数组中每个子串的长度
int count = 0;
for( i = 0; i < n; i++) //计算每个子串的长度
{
strlen_2[i] = strlen(w[i]);
}
for( k = 0; k < n; k++)
{
count = 0;
for( i = 0; i <strlen_1-strlen_2[k]+1; i++ )
{
for( j = 0; j < strlen_2[k]; j++)
{
if( w[k][j] != a[i+j]) //如果主串和子串不用 则跳出循环
{
break;
}
}
if( j == strlen_2[k]) //若一直没有跳出循环 则主串和子串有相同的部分
{
count++;
}
}
b[k] = count; //储存每个子串的个数
}
}
int main()
{
char a[] = "my name is ,book apple my name name.";
char w[5][10] = { "my"," name"," is ","book"," apple "};
int b[5]={0};
int i;
count(a,w,5,b); //调用函数
for( i = 0; i < 5; i++)
{
printf("%s:%d\n",w[i],b[i]);
}
return 0;
}
相关文章推荐
- 编写函数void count(char a[],char w[][10],int n,int b[])。功能是:统计w指向的数组中的n个单词在a指向的字符串中各自出现的次数(将非字母字符看作单词分
- 编写函数 void count(char a[],char w[][10],int n,int b[]).功能是:统计w指向的数组中的n个单词在a指向的字符串中各自出现的次数(将非字符字符看作单词分割
- 编写函数void change(char *a,char *b,char*c)。 函数功能是首先把b指向的字符串逆向存放,然后将a指向的字符串和b指向的字符串按排列顺序交叉合并到c指向的数组中,两个字
- 编写函数void change(char *a,char *b,char*c)。 函数功能是首先把b指向的字符串逆向存放,然后将a指向的字符串和b指向的字符串按排列顺序交叉合并到c指向的数组中,两个字
- 编写函数void change(char *a,char *b,char*c)。 函数功能是首先把b指向的字符串逆向存放,然后将a指向的字符串和b指向的字符串按排列顺序交叉合并到c指向的数组中,两个字
- 编写函数void change(char *a,char *b,char*c)。 函数功能是首先把b指向的字符串逆向存放,然后将a指向的字符串和b指向的字符串按排列顺序交叉合并到c指向的数组中,两个字
- 编写函数void count(char a[],char w[][10],int n,int b[])。
- 编写函数void change(char *a,char *b,char*c)。 函数功能是首先把b指向的字符串逆向存放
- 小方法1——CountChar--统计一个字符串中每个字符出现的次数
- 编写函数void change(char *a,char *b,char*c)。 函数功能是首先把b指向的字符串逆向存放 然后将a指向的字符串和b指向的字符串按排列顺序交叉合并到c指向的数
- Sql统计一个字符串在另一个字符串出现的次数的函数-fnQueryCharCountFromString
- C语言编程练习5——编写函数void change(char *a,char *b,char*c)。 函数功能是首先把b指向的字符串逆向存放
- 请编写相关函数来完成对一段英文字符串进行字母统计功能,出现最多那个字母的出现次数,不区分大小写。
- 编写函数void change(char *a,char *b,char*c)。 函数功能是首先把b指向的字符串逆向存放
- C语言:编写一个程序统计输入字符串中,各个数字、空白字符、以及其他所有字符出现的次数。
- 利用字符重复出现的次数,编写一个方法,实现基本的字符串压缩功能。比如,字符串“aabcccccaaa”经压缩会变成“a2b1c5a3”。若压缩后的字符串没有变短,则返回原先的字符串。 给定一个stri
- 函数、数组区别以及函数注意点和回调函数,以及删除字符串中出现次数最少的字符的程序
- 编写一个程序统计输入字符串中: 各个数字、空白字符、以及其他所有字符出现的次数
- 编写一个函数,它从一个字符串中提取一个子字符串。函数原型如下: Int substr(char dst[], char src[],int start, int len) {} 目标是:从src数组
- 【php数组函数序列】之array_count_values() - 统计数组中所有值出现的次数函数