C/C++ 第八周串和数组 (一)顺序串算法 项目2—(三)

非 Y 不嫁゛ 提交于 2020-04-06 19:21:50
/*        
*Copyright(c)2017,烟台大学计算机学院        
*All right reserved.        
*文件名:main.cpp sqqueue.h sqqueue.cpp        
*作者:黄士胜       
*完成日期:2017年11月1日        
*版本号:v1.0        
*        
*问题描述: 采用顺序存储的方式存储串,实现下列算法并测试。 
*输入描述:无    
*程序输出:见运行结果截图        
*/     


(三)

(3)从串s中删除其值等于c的所有字符。如从message中删除’e’,得到的是mssag:

主函数:

#include <stdio.h>
#include "../sqString.h"
void DellChar(SqString &s, char c)
{
    int k=0, i=0;   //k记录值等于c的字符个数
    while(i<s.length)
    {
        if(s.data[i]==c)
            k++;
        else
            s.data[i-k]=s.data[i];
        i++;
    }
    s.length -= k;
}

int main()
{
    SqString s;
    StrAssign(s, "message");
    DellChar(s, 'e');
    DispStr(s);
    return 0;
}
运行结果:



学习心得:

了解了如何进行串的删除,强化我对串的了解。

发布了34 篇原创文章 · 获赞 9 · 访问量 1万+
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!