用指针完成如下功能:输入一字符串s,再输入一字符c,输出该字符在字符串中出现了几次。 求大神

假设该字符串不超过100个字符。例如:输入:abcdefgaabbcc b输出:3
2025-04-15 04:36:38
推荐回答(2个)
回答1:

#include 
int main()
{
    char str[100],*p=str,c;
    int count=0;
    printf("输入:");
    scanf("%s",str);
    getchar();
    scanf("%c",&c);
    while(*p++!=0)
        if(*(p-1)==c)
            count++;
    printf("输出:%d",count);
    return 0;
}

回答2:

#include "stdio.h"
#include "string.h"

//统计字符串出现的次数
void function(char *str, char c, int len)
{
int i;          //循环变量
int count = 0;  //出现的次数

for(i=0; i {
//如果在字符串中出现
if(str[i] == c)
count ++;
}
printf("%c出现的次数是%d次\n", c, count);
}

int main()
{
char str[100];  //字符串
char c;         //字符

//输入
printf("请输入一个字符串:");
gets(str);
printf("请输入一个字符:");
scanf("%c", &c);

function(str, c, strlen(str));  //进行统计
}