ACM基础题 - 去除字符序列中的几个字符
Posted bcbobo21cn
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ACM基础题 - 去除字符序列中的几个字符相关的知识,希望对你有一定的参考价值。
题目,
除去一串字符串中的“WUB”即可,若该WUB在字符串开头则直接去除,若在字符串中间则更改为一个空格。
程序说明:利用了gets获取了一整行输入的字符串便于处理。利用flag变量来表示WUB是否在开头位置。
C++程序;
#include<stdio.h>
#include<string.h>
int main()
char s[205];
gets(s);
int flag=0,i=0;
while(i<strlen(s))
if(s[i]=='W'&&s[i+1]=='U'&&s[i+2]=='B')
i+=3;
if(flag==1)
printf(" ");
else
printf("%c",s[i]);
flag=1;
i++;
return 0;
MFC程序;VC2012;新建一个对话框工程;
void CwubDlg::OnBnClickedButton1()
// TODO: 在此添加控件通知处理程序代码
CString str1, str2;
GetDlgItem(IDC_EDIT1)->GetWindowTextW(str1);
int flag=0,i=0;
while(i<str1.GetLength())
if(str1.GetAt(i)=='W' && str1.GetAt(i+1)=='U' && str1.GetAt(i+2)=='B')
i+=3;
if(flag==1)
str2.Append(_T(" "));
else
str2.Append((CString)str1.GetAt(i));
flag=1;
i++;
SetDlgItemText(IDC_EDIT2,str2);
运行;
以上是关于ACM基础题 - 去除字符序列中的几个字符的主要内容,如果未能解决你的问题,请参考以下文章