编程: 输入一个字符串,输出该字符串中出现次数最多的字符以及出现的次数.
1个回答
展开全部
#include<stdio.h>
int main()
{
int k=0,sum[100],d=0;
char str[100];
printf("请输入字符串:");
scanf("%s",str);
for(int i=0;str[i]!='\0';i++)/*####字符串的每一个字符与整个字符串比较#####*/
{
for(int j=0;str[j]!='\0';j++)
{
if(str[j]==str[i])//如果找到相同的字符,K自加1
k++;
}
sum[i]=k;//把K的值存入SUM数组
k=0;//把K清零,便于下次循环的计数
}
for(int i=0;str[i]!='\0';i++)//查找SUM数组中的最大值
{
if(sum[0]<sum[i])
{
sum[0]=sum[i];
d=i;//把最大值的位置复制给d
}
}
printf("出现次数最多的字符是%c,出现的次数为 %d次\n",str[d],sum[d]);//输出出现次数最多的字符以及出现的次数.
return 0;
}
int main()
{
int k=0,sum[100],d=0;
char str[100];
printf("请输入字符串:");
scanf("%s",str);
for(int i=0;str[i]!='\0';i++)/*####字符串的每一个字符与整个字符串比较#####*/
{
for(int j=0;str[j]!='\0';j++)
{
if(str[j]==str[i])//如果找到相同的字符,K自加1
k++;
}
sum[i]=k;//把K的值存入SUM数组
k=0;//把K清零,便于下次循环的计数
}
for(int i=0;str[i]!='\0';i++)//查找SUM数组中的最大值
{
if(sum[0]<sum[i])
{
sum[0]=sum[i];
d=i;//把最大值的位置复制给d
}
}
printf("出现次数最多的字符是%c,出现的次数为 %d次\n",str[d],sum[d]);//输出出现次数最多的字符以及出现的次数.
return 0;
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询