c++编程:输入一个字符串,输入一个字符串里面的字符,在串中查找并删除

(1)若,没有找到,就输出提示信息“未找到此字符”(2)若找到,则提示“找到此字符,要删除吗?”,等待用户输入回答。若回答‘Y’则将其删除后并输出串... (1)若,没有找到,就输出提示信息“未找到此字符”
(2)若找到,则提示“找到此字符,要删除吗?”,等待用户输入回答。若回答‘Y’则将其删除后并输出串
展开
 我来答
哒哒啊如同一条
2012-04-11 · TA获得超过232个赞
知道小有建树答主
回答量:348
采纳率:0%
帮助的人:136万
展开全部
#include "stdio.h"
#include "string.h"
void main()
{
char a[100],b[100],c[100],y,*p=b;int n1,n2,i,j;
scanf("%s",b);
n1=strlen(b);
printf("要查找的字符:\n",a);
scanf("%s",a);
n2=strlen(a);
for(i=0;i<n1,putchar(*p);i++)
{ for(j=0;j<n2;j++)
c[j]=b[i+j];
c[n2]='\0';
if(strcmp(c,a)==0)
{
p=&p[n2];
printf("\b");}
else
p++;

}
}//由于我能力有限,只做了一个有就删除的,不能提示,但主要功能还在。给你。
滨崎步最爱
2012-04-11 · TA获得超过665个赞
知道小有建树答主
回答量:705
采纳率:0%
帮助的人:452万
展开全部
#include<iostream>
#include<string>
using namespace std;
int main()
{
string str,str2,sgn;
size_t ps=0;
cin>>str>>str2;
if((ps=str.find(str2))==string::npos)
cout<<"not find it"<<endl;
else{
cout<<"do you want to erase it"<<endl;
cin>>sgn;
if(sgn=="y"||sgn=="Y")
str.erase(ps,str2.size());
}
cout<<str<<endl;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
qq_1909771108
2012-04-10
知道答主
回答量:18
采纳率:0%
帮助的人:15.7万
展开全部
吕姗33你好!
A //找出所有最短单词 #include <iostream> #include <vector> using namespace std; int main() { char str[256]; int min = 256; gets(str); int i,k=0,len=0; char c; vector<int>wordlen; vector<int>wordstart; for (i=0;i<strlen(str);i++) { c = str[i]; if(c >='a' && c<='z' || c >='A' && c<='Z' || c >='0' && c<='9')len++; else { if(len <= min && len != 0) { min = len; wordlen.push_back(len); wordstart.push_back(i - min); } len = 0; } } //处理最后一个单词 if(len <= min && len > 0) { min = len; wordlen.push_back(len); wordstart.push_back(i - min); } for(i = 0; i < wordlen.size(); i++) { if( wordlen[i] == min) { for( k = wordstart[i]; k<wordstart[i]+min; k++)cout<<str[k]; cout<<endl; } } return 1; }
追问
可以有解释吗?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
劳壁睢蔓菁
2019-03-09 · TA获得超过3821个赞
知道小有建树答主
回答量:3156
采纳率:31%
帮助的人:229万
展开全部
没错,他是只能接收一个字符,但是因为你是在while里面循环,如果但他没有收到换行符时,他是会不断接收下一个字符的。
while
((c=getchar())!='\n'
)
//就是这个换行符
{
}

如果你想验证我的说你可以把上面的代码改成这样,当你输入3时他就不会收下个字符了。

while
((c=getchar())!=3
)
//就是这个换行符
{
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式