基于visual Studio2013解决面试题之1102合并字符串

来源:互联网 发布:array chunk php 编辑:程序博客网 时间:2024/05/07 09:32



题目



解决代码及点评

/*    给出一个函数来合并两个字符串 A 和 B 。字符串 A 的后几个字节和字符串 B 的前几个字节重叠重叠部分只要一份*/#include <iostream>using namespace std;void CopyStr(char *pszBuf1, char *pszBuf2, char *pszBuf3){    int nLen1 =strlen(pszBuf1);    int nLen2 =strlen(pszBuf2);    int nLen3 =nLen1 + nLen2 + 1;    int nPos1 = 0;    int nPos2 = 0;    int nPos3 = 0;    while (nPos1 < nLen1 - 1 && nPos2 < nLen2 - 1 && nPos3 < nLen3 - 1)    {        while (pszBuf1[nPos1] != pszBuf2[0] && nPos1 < nLen1 - 1)        {            pszBuf3[nPos3++] = pszBuf1[nPos1++];        }        if (nPos1 == nLen1 - 1)        {//pszBuf1完全结束,不存在重复            pszBuf3[nPos3++] = pszBuf2[nPos2++];        }        else        {//            int nTmpPos = nPos1;            while (pszBuf1[nPos1] == pszBuf2[nPos2] && (nPos1 < nLen1) && (nPos2 < nLen2))            {                nPos2++;                nPos1++;            }            if (nPos1 == nLen1)            {//完全重叠                nPos2 = 0;                while (nPos2 < nLen2)                {                    pszBuf3[nPos3++] = pszBuf2[nPos2++];                }            }            else            {//不完全重叠,回复nPos1                nPos1 = nTmpPos;                nPos2 = 0;                pszBuf3[nPos3++] = pszBuf1[nPos1++];            }        }    }        }int main(){    char szBuf1[] = "aghgh";    char szBuf2[] = "ghjklqwe";    int nLen3 = strlen(szBuf1) + strlen(szBuf2) + 1;    char *pszResult = new char[nLen3];int i;    for (i = 0; i < nLen3; i++)    {        pszResult[i] = 0;    }    pszResult[i-1] = '\0';    CopyStr(szBuf1, szBuf2, pszResult);    cout<<pszResult<<endl;    system("pause");    return 0;}


代码下载及其运行

代码下载地址:http://download.csdn.net/detail/yincheng01/6704519

解压密码:c.itcast.cn


下载代码并解压后,用VC2013打开interview.sln,并设置对应的启动项目后,点击运行即可,具体步骤如下:

1)设置启动项目:右键点击解决方案,在弹出菜单中选择“设置启动项目”


2)在下拉框中选择相应项目,项目名和博客编号一致

3)点击“本地Windows调试器”运行


程序运行结果








0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 房东违反了合同怎么办 上海居住证过期了怎么办 地铁卡消磁了怎么办 学生卡消磁了怎么办 家属院没房产证怎么办 邮箱收不到邮件怎么办 大学宿舍八人间怎么办 高中档案袋拆了怎么办 公派教师回国后怎么办? 事业单位辞职后档案怎么办 学信支付不了怎么办 校外怎么办北邮校园卡 报考身份证丢了怎么办 买房怎么办不取消低保 自考找不到真题怎么办 自考生考研没有档案怎么办 自考本科无学位怎么办 自考学位证书没拿到怎么办 自考毕业证出生日期错误怎么办 成考没有学位证怎么办 评职称学历认证怎么办 国家不承认学历怎么办 高考分数错了怎么办 签合同了不想干怎么办 贵港教育小学插班生怎么办 学校宿舍限瓦怎么办 苹果锁屏后wifi断开怎么办 兼职一天不给钱怎么办 五月孩子掉床怎么办 孩子五月份掉床怎么办 郑州怎么办暂住证凭条 郑州居住证凭条怎么办 宿舍虫子咬人怎么办 is语音注册频繁怎么办 苹果id注销了怎么办 网站突然打不开了怎么办 谷歌邮箱打不开怎么办 360借款无力承担怎么办 公司被收购期权怎么办 创业板连续亏损怎么办 国企合并后员工怎么办