首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
下列给定函数中,函数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
51
问题
下列给定函数中,函数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全国计算机二级
相关试题推荐
有以下程序#include<stdio.h>main(){FILE*fp;inti=20,j=30,k,n;fp=fopen("d1.dat","w");fprintf(fp,"%d\n",i;fprintf(f
下面程序段的运行结果是chara[]="lanuage",*p;p=a;while(*p!=’u’){printf("%c",*p-32);p++;}
以下程序的功能是建立一个带有头结点的单向链表,链表结点中的数据通过键盘输入,当输入数据为-1时,表示输入结束(链表头结点的data域不放数据,表空的条件是ph->next==NULL),请填空。#includestructlist{intd
以下程序的功能是:求出数组x中各相邻两个元素的和依次存放到a数组中,然后输出。请填空。main(){intx[10],a[9],I;for(I=0;I
已有定义:charc=′′;inta=1,b;(此处c的初值为空格字符),执行b=!c&&a;后b的值为【】。
下面程序的运行结果是【】。#include#defineSIZE12main(){chars[SIZE];intI;for(I=0;I
设有如下定义:structsk{intn;floatx;}data,*p;若要使p指向data中的n域,正确的赋值语句是
设p1和p2是指向一个int型一维数组的指针变量,k为int型变量,则不能正确执行的语句是
设x,y和z都是int型变量,且x=3,y=4,z=5,则下面表达式中,值为0的表达式是
若变量均已正确定义并赋值,以下合法的C语言赋值语句是
随机试题
构建社会主义和谐社会的指导思想中确定的构建社会主义和谐社会的重点是()
关于货币犯罪的认定,下列哪些选项是正确的?()(2011年卷二第59题)
混凝土振捣器的电动机电源应安装漏电保护装置,熔断器必须符合要求,接零安全可靠,否则严禁开机。在使用振捣器时,下列要求中正确的是()。
现金管理是对现金和流动资产的日常管理,下列关于现金管理的目的,说法错误的是()。
2010年1月,注册会计师甲、乙、丙三人在北京成立了一家会计师事务所,性质为特殊的普通合伙企业。甲、乙、丙在合伙协议中约定:(1)甲、丙分别以现金300万元和50万元出资,乙以一套房屋出资,作价200万元,作为会计师事务所的办公场所;(2)会计师事务所
被马克思称为“商品的惊险的跳跃”的是()
如果X=Y={3,0,2},求X×Y.
HowtoStayYoungIfyouwanttostayyoung,sitdownandhaveagoodthink.ThisistheresearchfindingbyateamofJapan
Overfivehundredyearsago,amandesigneda(11)machine.Healsoinventedahelicopter.This(12)manwasanItalian.He
Themoretimescientistsspenddesigningcomputers,themoretheymarvelatthehumanbrain.Tasksthatstumpthemostadvanced
最新回复
(
0
)