首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请编写函数fun,函数的功能是:统计一行字符串中单词的个数,作为函数值返回。一行字符串在主函数中输入,规定所有单词由小写字母组成,单词之间由若干个空格隔开,一行的开始没有空格。 注意:部分源程序在文件PROGl.C中。 请勿改动主函数mai
请编写函数fun,函数的功能是:统计一行字符串中单词的个数,作为函数值返回。一行字符串在主函数中输入,规定所有单词由小写字母组成,单词之间由若干个空格隔开,一行的开始没有空格。 注意:部分源程序在文件PROGl.C中。 请勿改动主函数mai
admin
2020-11-27
68
问题
请编写函数fun,函数的功能是:统计一行字符串中单词的个数,作为函数值返回。一行字符串在主函数中输入,规定所有单词由小写字母组成,单词之间由若干个空格隔开,一行的开始没有空格。
注意:部分源程序在文件PROGl.C中。
请勿改动主函数main和其他函数中的任何内容,
仅在函数fun的花括号中填入你编写的若干语句。
#innclude
#include
#define N 80
int fun(char *s)
{
}
main()
{char line[N];int num=0;voidNONO();
printf("Enter a string :\n");
gets(line);
num=fun(line);
printf("The number of word is:
%d\n\n",num);
NONO();
}
void NONO()
{/*请在此函数内打开文件,输入测试数据,调用fun函数,输出数据,关闭文件。 */
FTLE *rf,*wf;int i,num;char
line[N],*p;
rf=fopen("in.dat","r");
wf=fopen("out.dat","w");
for(i=0;i<10 ; i++) {
fgets(line,N,rf);
p=strchr(line, ’\n’);
if(p!=NULL) *p=0 ;
num=fun(line);
fprintf(wf,"%d\n",num);
}
fclose(rf); fclose(wf);
}
选项
答案
int i,n=0;//字符统计初始值设置为0 for(i=0;i
=’a’ &&s[i]<=’z’ &&s[i+1] =’ ’||s[i+1]==’\0’)//单词判断条件 n++; //单词统计计数器加1 } return n; //返回统计值
解析
(1)首先,求得字符串的长度。
(2)只要小于字符串的长度,就刘‘字符进行循环判断。
(3)根据题下要求,只要字符是小写字母,并且下一个紧靠的字符是空格或者尾符,那么单词统计计数器就加1。
转载请注明原文地址:https://www.kaotiyun.com/show/TK3p777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
有下列程序:voidflint*q){inti=0;for(;i
以下语句中存在语法错误的是
下列关于栈叙述正确的是()。
对于一个正常运行的C程序,以下叙述中正确的是
软件生命周期是指()。
软件调试的目的是()。
设循环队列的存储空间为Q(1:35),初始状态为front=rear=35。现经过一系列入队与退队运算后,front=15,rear=15,则循环队列中的元素个数为()。
一棵二叉树共有31个节点,其中8个是叶子节点,则度为1的节点数为()。
随机试题
A地高辛B多巴酚丁胺C氨力农D硝普钠E依那普利选择性激动β1受体,对CHF疗效较好的是
A.1.5~3gB.6—10gC.9~15D.20一25gE.30一120g鸡内金研末服用每次
A.新生儿B.8个月C.1岁D.1岁半E.2岁胸围和头围相等的年龄()。
患儿,男,8岁,血常规检查示血红蛋白为88g/L,护士告诉家长该患儿的贫血程度是()
原定正常的施工条件具体包括()。
“502”胶水,300克/支
(2016年)企业编制合并财务报表时,不能将已被人民法院宣告破产的子公司纳入合并范围。()
逮捕犯罪嫌疑人、被告人,只能由()执行。
下列对人物及其贡献的表述不正确的是()。
以ARM内核为基础的嵌入式处理器芯片采用系统总线与外围总线的层次结构方式构建片上系统,下面列出的组件中,不与外围总线相连的组件是()。
最新回复
(
0
)