首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请编写一个函数void fun(char *tt,int pp[]),统计在tt所指字符串中“’a’”到“’z’”26个小写字母各自出现的次数,并依次放在pp所指数组中。 例如,当输入字符串:abcdefgabcdeabc后,程序的输出结果应该是:
请编写一个函数void fun(char *tt,int pp[]),统计在tt所指字符串中“’a’”到“’z’”26个小写字母各自出现的次数,并依次放在pp所指数组中。 例如,当输入字符串:abcdefgabcdeabc后,程序的输出结果应该是:
admin
2018-09-27
87
问题
请编写一个函数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 O 0 0 0 0 0 0 0 0
注意:部分源程序在文件PROG1.C中。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
1 #include<stdio.h>
2 #include<string.h>
3 void fun(char *tt,int pp[])
4 {
5
6 }
7 main()
8 { char aa[1000];
9 int bb[26],k;
10 void NONO();
11 printf(’’\nPlease enter a char string:’’);scanf(’’%s’’,aa);
12 fun(aa,bb);
13 for(k:0;k<26;k++)printf(’’%d’’,bb[k]);
14 printf(’’\n’’);
15 NONO();
16 }
17 void NONO()
18 {/*本函数用于打开文件,输入测试数据,调用fun函数,输出数据,关闭文件。*/
19 char aa[1000];
20 int bb[2 6],k,i;
21 FILE *rf,*wf;
22 rf=fopen(’’in.dat’’,’’r’’);
23 wf=fopen(’’out.dat’’,’’w’’);
24 for(i=0;i<10;i++){
25 fscanf(rf,’’%s’’,aa);
26 fun(aa,bb);
27 for(k=0;k<26;k++)
28 fprintf(wf,’’%d’’,bb[k]);fprintf(wf,’’\n’’);
29 }
30 fclose(rf);
31 fclose(wf);
32 }
选项
答案
1 char*p=tt; 2 int i; 3 for(i=0;i<26;i++)pp[i]=0; 4 while(*p){ 5 if(*p>=’a’&&*p<=’z’)pp[*p-’a’]+=1; 6 p++;}
解析
该程序功能是统计字符串中26个字母各自出现的次数。解题思路,从已给部分源程序的main主函数开始入手,函数形参指针tt接受主函数中字符数组aa的起始地址,形参pp接受主函数中的bb数组的起始地址,bb数组的每一个元素都是计数器,bb[0]中统计字母“a”的个数,bb[1]中统计字母“b"的个数,依此类推,bb[25]中统计字母“z”的个数。
转载请注明原文地址:https://kaotiyun.com/show/E8xp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
以下程序运行后的输出结果是_________。intfun(inta){intb=0;staticintc=3;b++:c++;return(a+b+c);}main(){inti
以下错误的定义语句是
概要设计是软件系统结构的总体设计,以下选项中不属于概要设计的是()。
有以下程序:#include<stdio.h>main(){printf("%d\n",NULL);}程序运行后的输出结果是()。
若运行以下程序时,从键盘输入ADescriptor<CR>(<CR>表示回车),则下面程序的运行结果是()。#include<stdio.h>main(){charc;intv0=1,v1=0,v2=0;do
有以下程序段: typedef struct NODE {int num; struct NODE *next; }OLD; 以下叙述中正确的是 ______。
已知数据表A中每个元素距其最终位置不远,为节省时间,应采用的算法是
若有下列说明和语句,则对结构体变量st中成员i的引用方式不正确的是()。Structstu{inti;intname;}st,*p;p=&st;
2个指针变量不可以______。
对于长度为n的顺序存储的线性表,当随机插入和删除一个元素时,需平均移动元素的个数为【】。
随机试题
下列关于急性。肾小球肾炎的描述,正确的是
下列生物碱右旋体的生物活性强于左旋体的是
【背景资料】某安装施工单位承包一幢24层商务楼机电设备安装工程,内容包括:电气、给水排水及热水、通风与空调系统和电梯等的安装。该单位组织冷冻管道漏水问题调查时发现:压力试验作业指导书未明确压力表安装数量和位置,质检员是临时指定人员,阀门由供应商直
下列各项中,属于法律行为的是()。
票据和结算凭证的金额、出票或者签发日期、收款人名称不得更改,更改的票据无效;更改的结算凭证,银行不予受理。()
“宫斗剧”的盛行及其与当下社会的微妙对应,典型地体现了我们在现实困境中面对传统时的________。在________的“复古”潮流中,各种名目的“传统”泥沙俱下。那些植根于封建帝制基础上、早应被淘汰的历史沉渣,却都随着“复古”潮理直气壮地________
正确贯彻执行惩办与宽大相结合政策应注意的问题包括()。
致密性骨炎的X线表现是()。
主要不关注网络路线的总时差,而是集中管理缓冲活动持续时间和用于计划活动资源的制订进度计划所采用的技术是()。
字长是CPU的主要性能指标之一,它表示()。
最新回复
(
0
)