首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
给定程序MODI1.C中规定输入的字符串全部为字母,fun函数的功能是:统计a所指字符串中每个字母在字符串中出现的次数(统计时不区分大小写),并将出现次数最高的字母输出(如果有多个相同,输出一个即可)。 例如对于字符串:dadbcdbabdb,对应的输出应
给定程序MODI1.C中规定输入的字符串全部为字母,fun函数的功能是:统计a所指字符串中每个字母在字符串中出现的次数(统计时不区分大小写),并将出现次数最高的字母输出(如果有多个相同,输出一个即可)。 例如对于字符串:dadbcdbabdb,对应的输出应
admin
2017-02-24
38
问题
给定程序MODI1.C中规定输入的字符串全部为字母,fun函数的功能是:统计a所指字符串中每个字母在字符串中出现的次数(统计时不区分大小写),并将出现次数最高的字母输出(如果有多个相同,输出一个即可)。
例如对于字符串:dadbcdbabdb,对应的输出应为:b或d。
请改正函数fun中指定部位的错误,使它能得出正确的结果。
注意:不要改动main函数,不得增行或删行。也不得更改程序的结构。
试题程序:
#include<stdio.h>
#include<stdio.h>
#include<string.h>
void fun(char a[])
{int b[2 6],i,n,max;
for(i=0;i<26;i++)
/*********found*********/
a
=0;
n=strlen(a);
for(i=0;i<n;i++)
if(a
>=’a’&&a
<=’z’)
/*********found*********/
b[a
-’A’]++;
else if(a
>=’A’&&a
<=’z’)
b[a
-’A’]++;
max=0;
for(i=1;i<26;i++)
/*********found*********/
if(b[max]>b
)
max=i;
printf("出现次数最多的字符是:%C\n”,max+’a’);
}
main()
{ char a[200];
printf("请输入一个待统计的字符串:");scanf("%s",a);
fun(a);
}
选项
答案
(1)b[i]=0; (2)b[a[i]一’a’]++; (3)if(b[max]<b[i])
解析
要统计字符串中每个字符在这个字符串中出现的次数,可以设数组b中存放每个字符出现的次数h[0]存放字符a的次数,b[1]存放字符b的次数……。统计之前为数组b各元素赋初值为0。然后依次取出字符串的每个字符进行判断,使对应数组b加1。max初始值为0,与数组b中的每个元素进行比较,如果小于,就把下标进行交换。
(1)数组a存放的是字符串,数组h为整型数组存放的是每个字符的个数,应将数组b每个元素初始化为0。
(2)小写字母的ASCII码减去’a’的ASCII即为相应字母的下标值,相应下标值的数组元素的值增加1。
(3)最大值小于被比较数时,把被比较数的下标值赋给max,max中存放的总是当前最大值。
转载请注明原文地址:https://kaotiyun.com/show/A0Dp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
当运行以下程序时,从键盘输入AhaMA(空格)Aha<CR>,则下面程序的运行结果是#include<stdio.h>main(){chars[80],c=’a’;inti=0;scanf("%s",s);
若执行下面的程序时,从键盘输入5和2,则输出结果是main(){inta,b,k;scanf("%d,%d",&a,&b);k=a;if(a<b)k=a%b;elsek=b%a;printf("
C语言规定,在一个源程序中,main函数的位置
在结构化程序设计中,模块划分的原则是
以下程序的功能是建立一个带有头结点的单向链表,链表结点中的数据通过键盘输入,当输入数据为-1时,表示输入结束(链表头结点的data域不放数据,表空的条件是ph->next==NULL),请填空。#includestructlist{intd
阅读以下程序及对程序功能的描述,其中正确的是#includemain(){FILE*in,*out;charch,infile[10],outfile[10];printf("Entertheinfilename:\n"
设有如下定义:structsk{intn;floatx;}data,*p;若要使p指向data中的n域,正确的赋值语句是
若有以下函数首部intfun(doublex[10],int*n)则下面针对此函数的函数声明语句中正确的是
有以下程序intadd(inta,intb){return(a+b);}main(){intk,(*f)(),a=5,b=10;f=add;…}则以下函数调用语句错误的是
有以下程序intadd(inta,intb){return(a+b);}main(){intk,(*f)(),a=5,b=10;f=add;…}则以下函数调用语句错误的是
随机试题
在决策的影响因素中,个人对待风险的态度属于()
垂直固定管焊接过程中,应保持焊丝、焊嘴和管子切线方向的夹角()。
关于食管的说法,错误的是()
该患儿最可能的诊断是应先进行何种治疗
小儿6个月前的睡眠时间是小儿2~3岁的睡眠时间是
()是投资项目经济评价中应用十分广泛的一种技术,用以考察项目涉及的各种不确定因素对项目效益的影响,找出敏感因素。
《货币市场基金管理暂行规定》规定:“对于每日按照面值进行报价的货币市场基金,可以在基金合同中将收益分配的方式约定为(),并应当()进行收益分配。”
甲公司生产A、B两种产品,采用品种法计算产品成本。2013年12月甲公司基本生产车间相关资料如下:甲公司生产A、B两种产品,采用品种法计算产品成本。2013年12月甲公司基本生产车间相关资料如下:(1)1月1日,公司无在产品。1月份陆续
在南美,因为气候恶劣,同时又有许多原先种植胡椒的农民改种价值更高的可可,所以过去三年中世界胡椒的产量一直低于销售量,胡椒处于相对短缺状态,价格也飞涨至与可可相当。有人认为,由于胡椒价格上涨,那些三年前改种可可的人并不见得比不改种的好。以下哪项为真,最不能支
在新闻业务中,编辑的中介作用主要体现在哪些方面?(云南大学2004年研)
最新回复
(
0
)