使用c++写一段代码,输入一个字符串和一个字符,检测此字符出现的次数
时间: 2023-05-23 16:07:41 浏览: 42
```c
#include <stdio.h>
#include <string.h>
int main() {
char str[100];
char ch;
int count = 0;
printf("请输入一个字符串:");
gets(str);
printf("请输入一个字符:");
scanf("%c", &ch);
for(int i = 0; i < strlen(str); i++) {
if(str[i] == ch) {
count++;
}
}
printf("%c 出现的次数为:%d", ch, count);
return 0;
}
```
相关问题
用c++写一段代码,输入N,之后用循环输入N个字符串
以下是用 C 语言编写的代码,可以输入 N,然后循环 N 次输入字符串:
```c
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define MAX_LEN 100
int main() {
int n, i;
char str[MAX_LEN];
printf("请输入字符串个数 N:");
scanf("%d", &n);
for (i = 0; i < n; i++) {
printf("请输入第 %d 个字符串:", i + 1);
scanf("%s", str);
printf("您输入的字符串是:%s\n", str);
}
return 0;
}
```
在这段代码中,我们首先定义了一个常量 `MAX_LEN`,表示字符串的最大长度为 100。然后通过 `scanf` 函数输入了一个整数 `n`,表示接下来要输入的字符串个数。接着使用 `for` 循环,循环 `n` 次,每次输入一个字符串,并输出该字符串。最后,程序返回 0,表示运行成功。
用c++编写一段代码,输入一个字符串和一个子串,输出子串在字符串中出现的次数
好的,我可以为您提供一段 C 代码来实现这个功能:
```
#include <stdio.h>
#include <string.h>
int countSubstring(char *str, char *sub) {
int count = 0;
char *ptr = strstr(str, sub);
while (ptr != NULL) {
count++;
ptr = strstr(ptr + 1, sub);
}
return count;
}
int main() {
char str[100];
char sub[100];
printf("请输入字符串:");
scanf("%s", str);
printf("请输入子串:");
scanf("%s", sub);
int count = countSubstring(str, sub);
printf("子串在字符串中出现的次数为:%d\n", count);
return 0;
}
```
以上代码中的 `countSubstring` 函数接受两个参数:一个字符串和一个子串,它会通过不断地调用 C 标准库中的 `strstr` 函数来定位子串在字符串中出现的位置,直到无法找到为止。在每次定位到子串之后,函数都会累加一个计数器。最终,它会返回该计数器的值,即子串在字符串中出现的次数。
请注意,在此过程中,`countSubstring` 函数没有修改原始的字符串或子串。如果您需要修改原始的字符串或子串,请使用 C 标准库中的字符串操作函数,例如 `strcpy`,`strcat` 等。