C语言编程>第十七周 ② 下列给定程序中,函数fun的功能是:从str所指字符串中,找出s所指子串的个数作为函数值返回。

168 阅读3分钟

例题:下列给定程序中,函数fun的功能是:从str所指字符串中,找出s所指子串的个数作为函数值返回。

例如,当str 所指字符串中的内容为asdfghasdfgh,s所指字符串的内容为as,则函数返回整数2。
注意:不要改动main函数,不能增行或删行,也不能更改程序的结构。

代码如下:

#include<conio.h>
#include<stdio.h>
#include<string.h>
int fun(char*str,char*s)
{
	int m;
	char*p,*r;
	m=0;
	while(*str)
	{
		p=str;
		r=s;
		while(*r)
		if(*r==*p)
		{
			r++;
			p++;
		}
		else
		{
			break;
		}
		if(*r=='\0')
			m++;
		str++;
	}
	return m;
}
main()
{
	char str[100],s[100];
	int n;
	printf("\nPlease enter string str:");
	scanf("%s",str);
	printf("\nPlease enter substring s:");
	scanf("%s",s);
	n=fun(str,s);
	printf("\nThe result is:n=%d\n",n);
}

输出运行窗口如下:
在这里插入图片描述
本周其他练习

C语言程序设计专栏

C语言编程>第十七周 ① 请补充main函数,该函数的功能是:从字符串 s中取出所有数字字符,并分别计数,把结果保存在数组a中并输出,把其它字符保存在a[10]中。

C语言编程>第十七周 ② 下列给定程序中,函数fun的功能是:从str所指字符串中,找出s所指子串的个数作为函数值返回。

C语言编程>第十七周 ③ 请补充fun函数,该函数的功能是:先将在字符串str中的字符串按 逆序存放在t 中,然后把str中的字符按正序连接到t的后面。

C语言编程>第十七周 ④ 下列给定程序中,函数fun的功能是:在字符串的最前端加入n个“*”号,形成新串,并且覆盖原串。

C语言编程>第十七周 ⑤ 请补充fun函数,该函数的功能是:用来求出数组的最小元素在数组中的下标并存放在k所指的存储单元。

C语言编程>第十七周 ⑥ 下列给定程序中,函数fun的功能是:求出两个非零正整数的最大公约数,并作为函数值返回。

C语言编程>第十七周 ⑦ 数组a[N]保存着一组3位数的无符合正整数,其元素的个数通过变量len传入fun函数。请补充fun函数,该函数的功能是:从数组a中找出个位和百位的数字相等的所有无符合整数,结果保存在数组yy中,其个数由fun函数返回。

C语言编程>第十七周 ⑧ 下列给定程序中,函数fun的功能是:逐个比较x、y两个字符串对应位置中的字符,把ASCII相等或值小的字符依次存放在z数组中,形成一个新的字符串。

越努力越幸运!
加油,奥力给!!!