使用VC6打开考生文件夹下的源程序文件modi2.cpp。请完成函数fun(char*,char*s2),此函数的功能是计算s1中出现s2的个数,当不出现时,则返回0。如: sl为111112223333aaaaeeffd” s2为”11”

admin2013-09-11  8

问题 使用VC6打开考生文件夹下的源程序文件modi2.cpp。请完成函数fun(char*,char*s2),此函数的功能是计算s1中出现s2的个数,当不出现时,则返回0。如:
    sl为111112223333aaaaeeffd”
    s2为”11”则返回1
    s2为”aa”则返回2
注意:勿改动主函数main与其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。mclude    ostream.h>
    //注意只能使用int类型,不能类型转换
    int fun(char*s1,char*s2)
    {
    }
    void main()
    {
    char s1[1024];
    char s21256];
    cout<<“please input a string:”<    cin.getline(s1,1024);
    cout<<”please input other string:”<    cin.getline(s2,256);
    cout<    cout<  }return;
}

选项

答案int size=0; //初始化字符串统计变量个数 int sllen; int s21en; for(sllen=0;sl[sllen]!=0;sllen++);//第一个字符串循环 for(s2len=0;s2[s2len]!=0;s21crr++); //第二个字符串循环 fon[int i=0;i
解析 (1)该程序功能是计算sl中出现s2的个数。它的解题思路是两个字符串逐个比较其中的字符,从而统计符合的字符串个数。
(2)从已给部分源程序的main主函数开始入手,核心函数intfun(char*s1,char*s2)中的s1,s2参数为输入的字符串。
[解题思路]
(1)size变量用来存放s1中出现s2的个数,初始值赋为0。
(2)然后利用for循环对s2中的每一个字符与s1中的字符进行比较。
(3)如果循环中有符合条件的字符串,就将变量size个数加1。
转载请注明原文地址:https://kaotiyun.com/show/4zBD777K
0

最新回复(0)