本文主要是介绍输入一串由英文和空格组成的句子,输出指定内容,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
输入一串由英文和空格组成的句子,可能出现一个或多个空格,不区分大小写。
(1)输出该句子中字母的个数。
(2)输出该句子中单词的个数。
(3)输出该句子中出现次数最多的字符和次数。
例如:“thiS IS my love”
输出:字母个数12 ,单词个数4,最多的字符i s 次数为2
#include <stdio.h>
#include <string.h>
int main(){char ch[1000];int z[27]={0};//用来记入每一个字母出现的次数 int i,tmp,maxindex=0,maxnum=0,charcount=0,count=0;//maxnum出现最多字母的次数,charcount字母的个数 ,count单词的个数 gets(ch);//scanf("%s",ch)接受输入会过滤掉空格 // puts(ch);int len = strlen(ch),flag=0;//flag用于标记,有助于判断单词个数 for(i=0;i<len;i++){if(ch[i]>='a'&&ch[i]<='z'){ flag=1;charcount++;//字母个数加一tmp = ch[i]-'a';z[tmp]++;if(maxnum<z[tmp]){//判断出现次数最多的字符 maxnum = z[tmp];maxindex = tmp; } } if(ch[i]>='A'&&ch[i]<='Z'){ flag=1;charcount++;//字母个数加一tmp = ch[i]-'A';z[tmp]++;if(maxnum<z[tmp]){//判断出现次数最多的字符 maxnum = z[tmp];maxindex = tmp; }} if(flag==1&&ch[i]==' '){count++;flag=0 ;}}if(flag=1&&i>=len){//如果最后一个单词后没有空格 count++;flag=0 ;}printf("字母个数%d\n",charcount);printf("单词个数%d\n",count);for(i=0;i<26;i++){ //有可能出现最多次数的字符有多个。 if(z[i]==maxnum)printf("出现最多次数的字母%c\n",i+'a');}printf("出现最多次数的字母的次数%d\n",maxnum);return 0;
}
这篇关于输入一串由英文和空格组成的句子,输出指定内容的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!