首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
下列给定函数中,函数fun的功能是:统计字符串中各元音字母(即A、E、I、O、U)的个数。注意:字母不分大小写。 例如,输入”THIs is a boot”,则应输出是1 0 2 2 0。 请改正程序中的错误,使它能得出正确的结果。 注意:部分源程序在文件
下列给定函数中,函数fun的功能是:统计字符串中各元音字母(即A、E、I、O、U)的个数。注意:字母不分大小写。 例如,输入”THIs is a boot”,则应输出是1 0 2 2 0。 请改正程序中的错误,使它能得出正确的结果。 注意:部分源程序在文件
admin
2017-02-24
71
问题
下列给定函数中,函数fun的功能是:统计字符串中各元音字母(即A、E、I、O、U)的个数。注意:字母不分大小写。
例如,输入”THIs is a boot”,则应输出是1 0 2 2 0。
请改正程序中的错误,使它能得出正确的结果。
注意:部分源程序在文件MODI1.C中,不要改动main函数,不得增行或删行,也不得更改程序的结构!
试题程序:
1 #include<stdlib.h>
2 #include<conio.h>
3 #include<stdio.h>
4 /*********found*********/
5 fun(char*s,int num[5])
6 { int k,i=5;
7 for(k=0;k<i;k++)
8 /*********found*********/
9 num
=0;
10 for(;*s;s++)
11 { i=-1;
12 /*********found*********/
13 switch(s)
14 { case’a’:case’A’:
15 { i=0;break;}
16 case’e’:case’E’:
17 {i=1;break;}
18 case’i’:case’I’:
19 {i=2;break;}
20 case’o’:case’O’:
21 {i=3;break;}
22 case’u’:case’U’:
23 {i=4;break;)
24 }
25 if(i>=0)
26 num
++;
27 }
28 }
29 void main()
30 { char sl[81];~nt numl[5],i;
31 system(”CLS”);
31 printf("\nPlease enter a string:");
32 gets(s1);
33 fun(s1,num1);
34 for(i=0;i<5;i++)
35 printf("%d",num1
);
36 printf("\n");
37 }
选项
答案
(1)void fun(char*s,int num[5]) (2)num[k]=0; (3)switch(*s)
解析
switch语句说明如下:
(1)switch后的表达式,可以是整型或字符型,也可以是枚举类型。在新的ANSIC标准中允许表达式的类型为任何类型。
(2)每个case后的常量表达式只能是由常量组成的表达式,当switch后表达式的值与某一个常量表达式的值一致时,程序就转到此case后的语句开始执行。如果没有一个常量表达式的值与switch后的值一致,就执行default后的语句。
(3)各个case后的常量表达式的值必须互不相同。
(4)各个case的次序不影响执行结果,一般情况下,尽量将出现概率大的case放在前面。
(5)在执行完一个case后面的语句后,程序会转到下一个case后的语句开始执行,因而必须使用break语句才能跳出。
转载请注明原文地址:https://kaotiyun.com/show/U0Dp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
有以下程序段,且变量已正确定义和赋值for(s=1.0,k=1;k<=n;k++)s=s+1.0/(k*(k+1));printf("s=%f\n\n",s);请填空,使下面程序段的功能与之完全相同S=1.0;k=1;while([8]
有以下程序main(){intx=0,y=0,i;for(i=1;++i){if(i%2==0){x++;continue;}if(i%5==0){y++;break;}}printf("
在执行下述程序时,若从键盘输入6和8,则结果为main(){inta,b,s;scanf("%d%d",&a,&b);S=aif(a<B)s=b;S*=S;printf("%d",s);}
下列有关数据库的描述,正确的是
以下程序的输出结果是【】。#includemain(){inta[5]={2,4,6,8,10},*p;p=a;p++;printf("%d",*p);}
以下程序的输出结果是【】。#includevoidswap(int*a,int*b){int*t;t=a;a=b;b=t;}main(){inti=3,j=5,*p=&i,
以下程序的运行结果是【】。#includemain(){FILE*fp;inta[10]={1,2,3,0,0},i;fp=fopen("d2.dat","wb");fwtite(a,sizeof(int),5
阅读以下程序及对程序功能的描述,其中正确的是#includemain(){FILE*in,*out;charch,infile[10],outfile[10];printf("Entertheinfilename:\n"
设p1和p2是指向一个int型一维数组的指针变量,k为int型变量,则不能正确执行的语句是
随机试题
某公司经营出现困难,员工收入下降,积极性不高,人才流失较为严重。为解决这一问题,公司马经理决定从公司内部管理着手进行改革。他首先从职工反映问题较大的食堂抓起,和食堂管理人员研究如何提高饭菜质量,并让公司工会建立职工家庭经济情况、健康状况等小档案,定期调阅,
中药制剂的鉴别方法一般包括
青蒿抗疟的有效成分为( )。
某土地估价机构在开展土地估价业务时,下列行为中()是错误的。
某实施工程监理的一级公路,在施工过程中发生如下事件:事件1:由于深基坑开挖(开挖深度6m)工程危险性较大,施工项目总工程师根据以往施工经验估算并组织编制专项施工方案,并亲自兼任施工安全管理员。专项施工方案编制完成,经施工项目经理审核签字后,提交给
当需要使用非渗水土时,其含水量应()。
根据《中华人民共和国会计法》的规定,应当在财务会计报告上签名并盖章的人员有()。
如图22所示,在铅板A上有一个放射源C可向各个方向射出速率v=2.04×107m/s的B射线。B为金属网,A、B连接在电路上,电源电动势g=15V,内阻r=2.5Ω,滑动变阻器在0~10Ω之间可调。图中滑动变阻器滑片置于中点,A、B间距d=10cm,M为荧
用来测量一个人或团体经教育训练或学习后对知识和技能的掌握程度的是()
Accordingtoanewstudy,amajoringredienttotakingthepainoutofastressfuldayatworkisasupportivepartnerathome.
最新回复
(
0
)