首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请编写一个函数void fun(char *tt,int pp[]),统计在tt字符串中“a”到“ z”26个字母各自出现的次数,并依次放在pp所指数组中。 例如:当输入字符串abcdefghabcdeabc后,程序的输出结果应该是:33322110
请编写一个函数void fun(char *tt,int pp[]),统计在tt字符串中“a”到“ z”26个字母各自出现的次数,并依次放在pp所指数组中。 例如:当输入字符串abcdefghabcdeabc后,程序的输出结果应该是:33322110
admin
2010-05-05
65
问题
请编写一个函数void fun(char *tt,int pp[]),统计在tt字符串中“a”到“ z”26个字母各自出现的次数,并依次放在pp所指数组中。
例如:当输入字符串abcdefghabcdeabc后,程序的输出结果应该是:33322110000000000000000000
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
试题程序:
#include <conio.h>
#include <stdio.h>
void fun (char*tt, int pp[])
{
}
main()
{
char aa[1000];
int bb[26], k, n;
clrscr();
printf("\nPlease enter a char string: ") ;
scanf("%s",aa);
fun(aa,bb);
for (k=0 ;k<26 ; k++)
printf("%d ",bb[k]) ;
printf("\n ");
}
选项
答案
void fun(char*tt,int pp[] ) { int i; fori=0;i<26;i++) pp[i]=0; /*初始化pp数组各元素为0*/ for(;*tt!=’\0’;tt++) if(*tt>=’a’&&*tt<=’z’) pp[*tt-’a’]++; /*将tt字符串中’a’到’z’26个字母各自出现的次数,依次放在pp数组中,任一个小写字 母减去’a’后所得结果正好是它对应的下标*/ }
解析
第1个循环的作用是初始化数组pp,未经赋值变量的量为一个不确定数字。由于它要将’a’到’z’26个字母的个数依次放到数组pp中。即’a’的个数存于pp[0]中,’b’的个数存于pp[1]中,’c’的个数存于pp[2]中,…,依次类推。而’a’-’a’的值正好为0,’b’-’a’的值为1,’c’-’a’的值为2,…,依此类推。即任一个小写字母减去’a’后所得结果正好是它对应的下标,所以就有了pp[*tt-’a’]++。但*tt必须是小写字母即if()不应省略。
转载请注明原文地址:https://kaotiyun.com/show/MHID777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
甲,女,17岁,因涉嫌故意杀人被起诉。以下说法错误的是()。
人们形容天空往往是“蔚蓝的天空”,其实,天空并不是蓝色,飞行员在空中飞行到一定高度以后发现越往高处飞天色越暗。这是因为()。
将水生植物和小鱼放入盛有水的玻璃缸中,密闭后置于光照、温度等适宜条件下。下列相关叙述,错误的是()。
下列叙述中,错误的是()。
金融市场最基本的功能是()。
某甲在银行取款时,银行工作人员因点钞失误多付给他1万元,甲以这1万元作本钱经商,获利5千元,其中2千元为其劳务管理费用成本。一个月后银行发现了多付款的事实,要求甲退回,甲不同意。下列有关该案的哪一表述是正确的?()
甲将自己的汽车抵押给乙,作价5万元,甲继续使用。结果甲开车时不小心将车撞坏。下列说法正确的是()。
编号从1到10的10个白球排成一行,现按照如下方法涂红色:①涂2个球:②被涂色的2个球的编号之差大于2。那么不同的涂色方法有多少种?
小李的弟弟比小李小2岁,小王的哥哥比小王大2岁、比小李大5岁。1994年,小李的弟弟和小王的年龄之和为15。问2014年小李与小王的年龄分别为多少岁?
图示为一有底无盖的容器的平面展开图,其中①是边长为18的正方形,②③④⑤是等腰直角三角形,⑥⑦⑧⑨是等边三角形。那么这个容器的容积为:
随机试题
下列属于吸收个人和机构存款,并发放贷款的存款性金融机构是()。
含有罂粟壳的方剂是
长期应用可以导致成瘾的是
风湿性心内膜炎好发于()。
大型工业项目施工招标的资格预审表的内容不包括( )。
下列各项中,符合房产税规定的有()。
公开招标的物业管理项目,自招标文件开始发出之日起至投标人提交文件截止之日止,最短不得少于()日。
注意的起伏又称为()。
实验组和控制组后测实验设计的前提假设是()。
IEEE802.3u规定的快速以太网物理层规范100Base-Fx采用______传输介质。A.5类UTPB.STPC.光纤D.红外
最新回复
(
0
)