首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请编写函数fun,该函数的功能是:统计一行字符串中单词的个数,作为函数值返回。字符串在主函数中输入,规定所有单词由小写字母组成,单词之间有若干个空格隔开,一行的开始没有空格。 注意:部分源程序在文件PROG1.C中。 请勿改动main函数和其他函数中的任何
请编写函数fun,该函数的功能是:统计一行字符串中单词的个数,作为函数值返回。字符串在主函数中输入,规定所有单词由小写字母组成,单词之间有若干个空格隔开,一行的开始没有空格。 注意:部分源程序在文件PROG1.C中。 请勿改动main函数和其他函数中的任何
admin
2017-02-24
34
问题
请编写函数fun,该函数的功能是:统计一行字符串中单词的个数,作为函数值返回。字符串在主函数中输入,规定所有单词由小写字母组成,单词之间有若干个空格隔开,一行的开始没有空格。
注意:部分源程序在文件PROG1.C中。
请勿改动main函数和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
试题程序:
1 #include<string.h>
2 #inclucte<stdio.h>
3 #define N 80
4 int fun(char*s)
5 {
6
7 }
8 void main()
9 {
10 FILE*wf;
11 char line[N];
12 int num=0;
13 printf("Enter a string:\n");
14 gets(line);
15 num=fun(line);
16 printf("The number of wordis:%d\n\n",num);
17 /*********found*********/
18 wf=fopen("out.clat","w");
19 fprintf(wf,"%d",fun("a big car"));
20 fclose(wf);
21 /*********found*********/
22 }
选项
答案
int fun(char *s) { int i,j=0; for(i=0 ;s[i]!=’\0’;i++) if(s[i]!=’’&&(s[i+1]==’’‖s[i+1]==’\0’)) /*如果一个字母的下一个字符为空格或者结束标记,则表示一个单词结束*/ j++; return j; /*返回单词个数*/ }
解析
要判断单词的个数,首先想到的是程序怎样识别出一个单词,如果一个字母的下一个字符为空格或者结束标记,则表示一个单词结束,因此程序使用for循环语句遍历整个字符串,用if条件语句判断当前字符是否表示一个单词的结束,如果当前字符表示一个单词结束,则存放单词个数的变量加1,最后返回单词的个数。
转载请注明原文地址:https://www.kaotiyun.com/show/pMDp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
下列选项中不属于结构化程序设计方法的是()。
阅读下列程序,则程序的输出结果为______。#include"stdio.h"structty{intdata;charc;};main(){structtya={30,’x’};fun(a);printf("%d%c
现有如下程序段#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,
当运行以下程序时,从键盘输入AhaMA(空格)Aha<CR>,则下面程序的运行结果是#include<stdio.h>main(){chars[80],c=’a’;inti=0;scanf("%s",s);
已知大写字母A的ASCII码是65,小写字母a的ASCII码是97。以下不能将变量c中的大写字母转换为对应小写字母的语句是
以下程序的功能是:求出数组x中各相邻两个元素的和依次存放到a数组中,然后输出。请填空。main(){intx[10],a[9],I;for(I=0;I
设p1和p2是指向一个int型一维数组的指针变量,k为int型变量,则不能正确执行的语句是
若要求定义具有10个int型元素的一维数组a,则以下定义语句中错误的是
下列函数的运行结果是main(){inti=2,p;intj,k;j=i;k=++i;p=f(j,k);printf("%d",p);}intf(inta,intb){intc;if(a>b
随机试题
狗最初对圆形和椭圆形做出同样的反应,经训练后仅对圆形做出反应。这都是条件反射的()。
所谓双基是指()。
A、亚甲蓝B、地塞米松C、庆大霉素D、吗啡E、喃妥因易引起新生儿高铁血红蛋白症的是
用钝物打击所致皮肤撕裂,伤口周围明显挫伤属
我国1999年宪法修正案的主要内容包括()。
对热轧带肋钢筋HRB335进行拉伸试验,钢筋规格型号为Ф20mm×400mm。请回答下列问题:钢筋应按批进行检查和验收,每批钢筋由()的钢筋组成。
某工程双代号网络计划如下图所示,其关键线路有( )条。
某汽车贸易公司2015年3月进口20辆小轿车,海关审定的关税完税价格为25万元/辆,当月销售16辆,取得含税销售收入480万元;2辆该公司自用;2辆赠送给合作单位,合同约定的含税价格为每辆30万元。该公司应纳车辆购置税()万元。(小轿车关税税率2
将一根绳子对折2次后,从中间剪断,一共生成几段绳子?
近卫声明
最新回复
(
0
)