耀华建设管理有限公司网站惠州网站建设兼职
耀华建设管理有限公司网站,惠州网站建设兼职,网站后台添加关键词,浙江建设工程信息网查询平台总时间限制: 1000ms 内存限制: 65536kB
描述
判断一个由a-z这26个字符组成的字符串中哪个字符出现的次数最多
输入
第1行是测试数据的组数n#xff0c;每组测试数据占1行#xff0c;是一个由a-z这26个字符组成的字符串 每组测试数据之间有一个空行#xff0c;每行数据不…总时间限制: 1000ms 内存限制: 65536kB
描述
判断一个由a-z这26个字符组成的字符串中哪个字符出现的次数最多
输入
第1行是测试数据的组数n每组测试数据占1行是一个由a-z这26个字符组成的字符串 每组测试数据之间有一个空行每行数据不超过1000个字符且非空
输出
n行每行输出对应一个输入。一行输出包括出现次数最多的字符和该字符出现的次数中间是一个空格。 如果有多个字符出现的次数相同且最多那么输出ascii码最小的那一个字符
样例输入
2
abbcccadfadffasdf样例输出
c 3
f 4答案
#include stdio.h
typedef struct {char ch;int countArise;
} chara;
typedef struct {chara chars[26];int last;
} words;
int main() {int n, j;char str[1000], *pstr, ch, maxAriseChar;static words word;scanf(%d\n, n);for(int i 0; i n; i) {gets(str);for(p str; *p ! 0; p) {j 0;for(; j word.last; j) {if(word.chars[j].ch *p) {word.chars[j].countArise;goto out;}}word.chars[word.last].ch *p;word.chars[word.last].countArise 1;out:;}maxAriseChar 0;for(int k 0; k word.last; k) {if(word.chars[maxAriseChar].countArise word.chars[k].countArise) {maxAriseChar k;} else if(word.chars[maxAriseChar].countArise word.chars[k].countArise word.chars[maxAriseChar].ch word.chars[k].ch) {maxAriseChar k;}}printf(%c %d\n, word.chars[maxAriseChar].ch, word.chars[maxAriseChar].countArise);if(i n-1) {ch getchar();}word.last 0;}
}还有一份比较简单的。
#include stdio.h
typedef struct {char ch;int countArise;
} chara;
int main() {int n, j, pos0;char str[1000], *pstr, ch, maxAriseChar;static chara chars[26];scanf(%d\n, n);for(int i 0; i n; i) {gets(str);for(p str; *p ! 0; p) {j 0;for(; j pos; j) {if(chars[j].ch *p) {chars[j].countArise;goto out;}}chars[pos].ch *p;chars[pos].countArise 1;out:;}maxAriseChar 0;for(int k 0; k pos; k) {if(chars[maxAriseChar].countArise chars[k].countArise) {maxAriseChar k;} else if(chars[maxAriseChar].countArise chars[k].countArise chars[maxAriseChar].ch chars[k].ch) {maxAriseChar k;}}printf(%c %d\n, chars[maxAriseChar].ch, chars[maxAriseChar].countArise);if(i n-1) {ch getchar();}pos 0;}
}一些感想
我还是太习惯用last了虽然遍历26次也没什么所以我用last的办法使程序变复杂了。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/88272.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!