首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
编写函数void fun(char *tt,int pp[]),统计在tt所指的字符串中′a′到′z′26个小写字母各自出现的次数,并依次放在pp所指的数组中。 例如,当输入字符串″abcdefgabcdeabc″后,程序的输出结果应该是: 3 3 3 2
编写函数void fun(char *tt,int pp[]),统计在tt所指的字符串中′a′到′z′26个小写字母各自出现的次数,并依次放在pp所指的数组中。 例如,当输入字符串″abcdefgabcdeabc″后,程序的输出结果应该是: 3 3 3 2
admin
2019-04-14
51
问题
编写函数void fun(char *tt,int pp[]),统计在tt所指的字符串中′a′到′z′26个小写字母各自出现的次数,并依次放在pp所指的数组中。
例如,当输入字符串″abcdefgabcdeabc″后,程序的输出结果应该是:
3 3 3 2 2 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
注意:请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
试题程序:
#include <stdio.h>
#include <string.h>
void fun(char *tt,int pp[])
{
}
main()
{
char aa[1000];
int bb[26],k;
void NONO();
printf(″\nPlease enter a char string:″):
scanf(″%s″,aa);
fun(aa,bb);
for(k=0;k<26;k+ +)
printf(″%d″,bb[k]);
printf(″\n″);
NONO();
}
void NONO()
/*本函数用于打开文件,输入测试数据,调用fun函数,输出数据,关闭文件。*/
{
char aa[1000];
int bb[26],k,i;
FILE *rf,*wf;
rf=fopen(″in.dat″,″r″);
wf=fopen(″out.dat″,″w″);
for(i=0;i<10;i+ +)
{
fscanf(rf,″%s″,aa);
fun(aa,bb);
for(k=0;k<26;k+ +)
fprintf(wf,″%d″,bb[k]);
fprintf(wf,″\n″);
}
fclose(rf);
fclose(wf);
}
选项
答案
void fun(char *tt,int pp[]) { int i: for(i=0;i<26;i+ +) pp[i]=0;/*初始化pp数组各元素为0*/ for(;*tt!=′\0′;tt+ +) if(*tt> =′a′&&*tt< =′z′) pp[*tt—′a′]+ +; }
解析
本题考查:for循环语句,注意循环变量取值范围以及循环体语句作用;数组元素初始化和赋值操作;if语句条件表达式,需注意条件表达式的逻辑运算;字符串结束标识′\0′。
要求统计在tt所指字符串中a~z共26个小写母各自出现的次数,并依次放在pp所指数组中。首先使用for循环语句初始化pp数组中分别用来统计26个字母的个数,再使用循环判断语句对tt所指字符串中的字符进行逐一比较操作,同时存入相对应的pp数组中。
转载请注明原文地址:https://kaotiyun.com/show/X1Rp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
有以下程序floatfun(intx,inty){return(x+y);}main(){inta=2,b=5,c=8;printf("%3.0f\n",fun((int)fun(a+c,b),a-c
要求以下程序的功能是计算main(){intn;floats;S=1.0;for(n=10;n>1;n--)s=S+1/n;printf("%6.4f\n",
若有以下定义和语句:() ints[4][5](*ps)[5]; ps=s; 则对s数组元素的正确引用形式是
下列程序执行后的输出结果是main(){inta[3][3],*p,i;p=&a[0][0];for(i=1;i
下面的叙述正确的是()。
有一个学生选课的关系,其中学生的关系模式为:学生(学号,姓名,班级,年龄),课程的关系模式为:课程(课号,课程名,学时),其中两个关系模式的键分别是学号和课号,则关系模式选课可定义为:选课(学号,【】,成绩)。
排序方法中,将整个无序序列分割成若干小的子序列并分别进行插入排序的方法,称为__________。
若按功能划分,软件测试的方法通常分为白盒测试方法和【】测试方法。
下列说法正确的是()。
随机试题
Itissuggestedthatsmoking______inpublicplaces.
结肠、直肠手术前肠道准备使用的制菌药物为【】
WouldyoubelievethatthefirstoutstandingdeafteacherinAmericawasaFrenchman?HisnamewasLaurentClerc.He【C1】______a
研究某省肿瘤医院1972~1978年间所有原发性乳腺癌女性病例记录,发现雌激素受体阳性者192人、阴性者132人,两组妇女在年龄、种族及其他特征上都相似。在7年期间,阳性者中86人出现复发,而阴性者中62人出现复发;这些复发的妇女中,受体阳性者无病间隔时间
张某在甲市服刑期间,遵守监规,接受教育改造,确有悔改表现,于是监狱向甲市中级人民法院提出假释建议书,并由甲市中级人民法院作出假释裁定。在假释期间内,乙县公安机关发现张某曾参与当地一起盗窃案,于是将其抓获归案,并由乙县人民检察院起诉到乙县人民法院审判。该案中
李某伪造一份赝品名人字画,并将之以2万元的价格卖给钱某。合同履行后,钱某请有关专家对该字画进行鉴定后发现是赝品,但是钱某表示这么好的画即使是赝品2万元也是很值得的,他不会反悔。那么,对于此买卖合同效力表述正确的是()。
我国人民行使国家权力的机关是()。
下列没有语病的一句是( )。
Accordingtotheman,heusedtobe______.
Farewell,LibrariesA)Amazon,corn’srecentannouncementthatsalesofe-booksattheonlinemegastorehadovertakensalesofha
最新回复
(
0
)