题目是这样的:
自定义函数,实现字符串中某个字符全部出现的位置,返回位置并输出。
我写的代码如下:
#include <iostream>
using namespace std;
int Search(char *str,char ch,int *s);
int main()
{
char str[100],ch;
int flag,x,s[100];
cout << "请输入字符串:";
cin >>str;
cout <<"请输入查找的字符:";
cin >>ch;
flag=Search(str,ch,s);
if(flag==0)
{
cout <<"找不到该字符!";
}
else
{
cout<<"该字符出现在字符串的";
for(x=0;x<flag;x++)
{
cout<<s[x]<<"";
}
cout<<"的位置.";
}
}
int Search(char *str,char ch,int *s)
{
int i,j=0;
for(i=0;i<strlen(str);i++)
{
if(str[i]==ch)
{
s[j]=i++;
j++;
}
}
return j;
}
这是运行的结果:
已经基本能够实现要求了,就是在显示字符出现在字符串是XX位置,(以截图为例)a应该出现在字符串的第1,5,8个位置,可显示的047则是查找到字符a时存放的数组下标,现在我就想把这些下标加上1,不以下标形式显示,希望以正常我们看到字符串数出来的的位置158这样显示,求高手帮忙修改一下!!感激不尽QAQ
这个问题我还没发现,谢谢你提出来,不过不好意思你没说到我想要的问题,就不选你了。谢谢你给我找到新问题。
追答选不选我没关系,不过怎么就没说到你想要的问题了,这样就能输出下标+1了,也就是你说的正常看到的位置
追问好吧对不起(。﹏。*) 我错了…… 。。窝太渣了ORZ、、、真不好意思。