首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
下列给定函数中,函数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
27
问题
下列给定函数中,函数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://jikaoti.com/ti/Noi0FFFM
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
以下程序的输出结果是______。main(){inty=9;for(;y>0;y--)if(y%3==0){printf("%d",--y);continue;}}
请选出正确的程序段
现有如下程序段#include"stdio.h"main(){inta[5][6]={23,3,65,21,6,78,28,5,67,25,435,76,8,22,45,7,8,34,6,78,32,4,5,67,4,21,
下面程序输出的结果是main(){inti;inta[3][3]={1,2,3,4,5,6,7,8,9};for(i=0;i<3;i++)printf("%d",a[2-i][i]);}
若执行下面的程序时,从键盘输入5和2,则输出结果是main(){inta,b,k;scanf("%d,%d",&a,&b);k=a;if(a<b)k=a%b;elsek=b%a;printf("
在结构化程序设计中,模块划分的原则是
以下程序的功能是建立一个带有头结点的单向链表,链表结点中的数据通过键盘输入,当输入数据为-1时,表示输入结束(链表头结点的data域不放数据,表空的条件是ph->next==NULL),请填空。#includestructlist{intd
以下程序的输出结果是【】。#includemain(){inta[5]={2,4,6,8,10},*p;p=a;p++;printf("%d",*p);}
若有以下函数首部intfun(doublex[10],int*n)则下面针对此函数的函数声明语句中正确的是
阅读以下程序及对程序功能的描述,其中正确的是#includemain(){FILE*in,*out;charch,infile[10],outfile[10];printf("Entertheinfilename:\n"
随机试题
处方用北五加皮系指( )
膝关节人工关节置换术后使用CPM的开始时间是
A、4.0×109/LB、3.0×109/LC、2.0×109/LD、1.0×109/LE、0.5×109/L粒细胞缺乏是指外周血中粒细胞绝对值低于()
【案例】复方阿司匹林片在临床上常用于解热、镇痛、抗炎。【处方】阿司匹林268g对乙酰氨基酚136g咖啡因33.4g淀粉266g淀粉浆(15%~17%)85g
设则A-1=()。
根据国标gb/t18354-2001《物流术语》,运输(transportation)是_______的物流活动。
论我国汇率制度的选择与实现。(厦门大学)
把数学表达式表示为正确的VB表达式应该是()。
Howistheinformationorganizedinthelecture?
李时珍是明朝卓越的医药学家(pharmacologist),也是世界文化史上伟大的自然科学家。他精通医术,并且具有严谨的科学态度。李时珍钻研了很多医学上的经典书籍,并结合自身经验和调查研究,历时27年撰写了著名的《本草纲目》(CompendiumofM
最新回复
(
0
)