首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请编写函数fun,函数的功能是:统计一行字符串中单词的个数,作为函数值返回。一行字符串在主函数中输入,规定所有单词由小写字母组成,单词之间由若干个空格隔开,一行的开始没有空格。 注意:部分源程序在文件PROG1.C中。 请勿改动主函数mai
请编写函数fun,函数的功能是:统计一行字符串中单词的个数,作为函数值返回。一行字符串在主函数中输入,规定所有单词由小写字母组成,单词之间由若干个空格隔开,一行的开始没有空格。 注意:部分源程序在文件PROG1.C中。 请勿改动主函数mai
admin
2019-03-19
69
问题
请编写函数fun,函数的功能是:统计一行字符串中单词的个数,作为函数值返回。一行字符串在主函数中输入,规定所有单词由小写字母组成,单词之间由若干个空格隔开,一行的开始没有空格。
注意:部分源程序在文件PROG1.C中。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
1 #include<stdio.h>
2 #include<string.h>
3 #define N 80
4 int fun(char *a)
5 {
6
7 }
8 main()
9 {char line[N];int num=0;void NONO();
10 printf(’’Enter a string:\n’’);gets(line);
11 num=fun(lihe);
12 printf(’’The number of word is:%od\n\n’’,num);
13 NONO();
14 }
15 void NONO()
16 {/*请在此函数内打开文件,输入测试数据,调用fun函数,输出数据,关闭文件。*/
17 FILE *rf,*wf;int i,num;char line[N],*p;
18 rf=fopen(’’in.dat’’,’’r’’);
19 wf=fopen(’’out.dat’’,’’w’’);
20 for(i=0;i<10;i++) {
21 fgets(line,N,rf);
22 p=strchr(line,’\n’);
23 if(p!=NULL) *p=0;
24 num=fun(line);
25 fprintf(wf,’’%d\n’’,num);
26 }
27 fclose(rf);fclose(wf);
28 }
选项
答案
1 int i,n=0;//字符统计初始值设置为0 2 for(i=0;i<strlen(s);i++) 3 //小于字符串长度进行字符循环判断 4 { 5 if(s[i]>=’a’&&s[i]<=’z’&&s[i+1]=’’||s[i+1]==’\0’) //单词判断条件 6 n++; //单词统计计数器加1 7 } 8 return n; //返回统计值
解析
该程序功能是统计一行字符串中单词的个数,作为函数值返回。单词之间以空格为分割,所以,对单词个数的统计可以理解为对空格字符的统计,其中,最后一个单词以字符串的结尾符为分割。
(1)首先,求得字符串的长度。
(2)只要小于字符串的长度,就对字符进行循环判断。
(3)根据题干要求,只要字符是小写字母,并且下一个紧靠的字符是空格或者尾符,那么单词统计计数器就加1。
转载请注明原文地址:https://kaotiyun.com/show/D6Rp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
以下程序运行后的输出结果是【 】。main(){inta=3,b=4,c=5,t=99;if(b<a&&a<c)t=a;a;a=c;c=tif(a<c&&b<c)t=b;b=a;a=t;prin
以下程序的输出结果为【】。main(){intk=1;white(k<=15)if(++k%3!=2)continue;elseprintf("%d",k);print
在C语言中,存储类型为()的变量只在使用它们时才占用存储空间。
下列程序的运行结果是______。#include<stdio.h>main(){inta,b,C;a=3;b=4;c=5;if(a>B)if(a>C)printf("%d",A);
以下程序是求矩阵a、b的和,结果存入矩阵c中,请填空。#includemain(){inta[4][4]={{1,2,6,7),{0,4,2,-8),{1,4,5,2},{2,4,6,8));intb[4]
下列程序的输出结果是______。intm=10;intfun(inta,intB){intm=2;return(a*b-m);}main(){intx=7,y=5;
下述程序的输出结果是()。#includemain(){inti;for(i=1;i<=10;i++){if(i*i>=20)&&(i*i<=100))break;
表示关系a≤b≤c的C语言表达式为()。
以下程序中,函数fun的功能是计算x2-2x+6,主函数中将调用fun函数计算:y1=(x+8)2-2(x+8)+6y2=sin2(x)-2sin(x)+6请填空。doublefun(doublex){return(x*x-2*x+6);}{
fseek函数的正确调用形式是
随机试题
患者,女,39岁。因持续上腹痛伴恶心、呕吐3天入院。5年来有胆囊结石病,常有短暂上腹不适症状。B超显示胆囊多发小结石,总胆管宽9mm,其内未见结石,胰腺肿大增厚,周围有积液。查体:体温37.7℃,脉率106次/分,呼吸28次/分,血压132/86mmHg
A.β受体阻滞剂B.钙拮抗剂C.硝酸酯类D.多巴胺E.ACEl
下列不属于药品二级管理(贵重药品)范围的是
女,28岁,主诉:下面牙舌侧牙龈长一肿瘤5个月,并慢慢增大。影响进食。该患者如果诊断为妊娠瘤,需切除时应注意的是
具有实行会员分级结算制度期货交易所结算业务资格的期货公司和独资期货公司等应当设()。
根据《暂行办法》的规定确定简化的经济增加值时需调整研究开发费用是指()。
下列各项所得中,应计算缴纳个人所得税的有()。(2001年)
企业法人是指具有符合国家法律规定的资金数额、企业名称、组织章程、组织机构、住所等法定条件,能够独立承担民事责任,经主管机关核准登记取得法人资格的社会经济组织。下列属于企业法人的是()。
数据独立性是数据库技术的重要特点之一。所谓数据独立性是指______。
Thedifficultyofbalancingprofitsandsocialresponsibilityisveryapparentwhenyouconsiderenvironmentalissues.Consumers
最新回复
(
0
)