怎么查找一个string 字符串中的子字符串出现的次数和位置
1个回答
展开全部
首先获得一个字符用ch=getchar()或者scanf ("%c", &ch);
其次判断字符相等直接用==
接着j没有定义
最后输出int数组用循环
参考代码:
#include <stdio.h>
#include <string.h>
int main()
{
char a[80] = "abcdefgh\0";
char ch;
int i, m, b[80];
int flag = 0;
ch = getchar();//获取一个字符
m = strlen(a);
for (i = 0; i < m; ++i){
if (a[i] == ch){//找到了,直接判断是否相等
b[flag] = i+1;//记录位置
flag += 1;
}
}
if (flag == 0)printf ("no");
else {
printf ("%d\n", flag);
for (i = 0; i < flag; i++){//对位置进行输出,用循环
printf ("%d ", b[i]);
}
printf ("\n");
}
return 0;
}
其次判断字符相等直接用==
接着j没有定义
最后输出int数组用循环
参考代码:
#include <stdio.h>
#include <string.h>
int main()
{
char a[80] = "abcdefgh\0";
char ch;
int i, m, b[80];
int flag = 0;
ch = getchar();//获取一个字符
m = strlen(a);
for (i = 0; i < m; ++i){
if (a[i] == ch){//找到了,直接判断是否相等
b[flag] = i+1;//记录位置
flag += 1;
}
}
if (flag == 0)printf ("no");
else {
printf ("%d\n", flag);
for (i = 0; i < flag; i++){//对位置进行输出,用循环
printf ("%d ", b[i]);
}
printf ("\n");
}
return 0;
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询