例题:下列给定程序中,函数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语言编程>第十七周 ① 请补充main函数,该函数的功能是:从字符串 s中取出所有数字字符,并分别计数,把结果保存在数组a中并输出,把其它字符保存在a[10]中。
C语言编程>第十七周 ② 下列给定程序中,函数fun的功能是:从str所指字符串中,找出s所指子串的个数作为函数值返回。
C语言编程>第十七周 ③ 请补充fun函数,该函数的功能是:先将在字符串str中的字符串按 逆序存放在t 中,然后把str中的字符按正序连接到t的后面。
C语言编程>第十七周 ④ 下列给定程序中,函数fun的功能是:在字符串的最前端加入n个“*”号,形成新串,并且覆盖原串。
C语言编程>第十七周 ⑤ 请补充fun函数,该函数的功能是:用来求出数组的最小元素在数组中的下标并存放在k所指的存储单元。
C语言编程>第十七周 ⑥ 下列给定程序中,函数fun的功能是:求出两个非零正整数的最大公约数,并作为函数值返回。
C语言编程>第十七周 ⑧ 下列给定程序中,函数fun的功能是:逐个比较x、y两个字符串对应位置中的字符,把ASCII相等或值小的字符依次存放在z数组中,形成一个新的字符串。
越努力越幸运!
加油,奥力给!!!