//函数参数:str指向待统计的字符串,指针形参tag返回重复字符最后出现的下标位置
//函数返回值:返回字符重复的次数
int CountRepeatStr(char str[], int *tag);
求解思路:设置一个计数器,遍历字符串中的所有字符,若str[i] == str[i+1],则计数器加1,同时判断计数器的值是否大于记录的最大重复次数max,若大于,则用计数器的值更新max,并记录该字符最后出现的位置i+1.若str[i] != str[i+1],则计数器重新初始化为1。遍历结束时,函数返回max 的值。
程序运行结果示例1:
Input a string:
2344455555↙
5:5
程序运行结果示例2:
Input a string:
sgf222257↙
2:4
输入提示信息:"Input a string:\n"
输入格式: 用gets()输入字符串
输出格式:"%c:%d\n"
注意:为避免出现格式错误,请直接拷贝粘贴上面给出的输入、输出提示信息和格式控制字符串!
#include<stdio.h>
#include<string.h>
int main()
{
char a[80];
int b, i,j,t=1,tl,num=0;
printf("Input a string:\n");
gets(a);
for (i=0;i<strlen(a);i++){
t=1;
for (j=i+1;j<strlen(a);j++){
if (a[j]==a[i]){
t++;
}
}
if (i==0){
tl=t;
}