首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
假定输入的字符串中只包含字母和*号。请编写函数fun,它的功能是:只删除字符串前导和尾部的*号,串中字母之间的*号都不删除。形参n给出了字符串的长度,形参h给出了字符串中前导*号的个数,形参e给出了字符串中最后*号的个数。在编写函数时,不得使用C语言提供的
假定输入的字符串中只包含字母和*号。请编写函数fun,它的功能是:只删除字符串前导和尾部的*号,串中字母之间的*号都不删除。形参n给出了字符串的长度,形参h给出了字符串中前导*号的个数,形参e给出了字符串中最后*号的个数。在编写函数时,不得使用C语言提供的
admin
2013-03-29
38
问题
假定输入的字符串中只包含字母和*号。请编写函数fun,它的功能是:只删除字符串前导和尾部的*号,串中字母之间的*号都不删除。形参n给出了字符串的长度,形参h给出了字符串中前导*号的个数,形参e给出了字符串中最后*号的个数。在编写函数时,不得使用C语言提供的字符串函数。
例如,字符串中的内容为:****A*BC*DEF*G********,删除后,字符串中的内容应当是:A*BC*DEF*G。
注意:部分源程序在文件FROGl.C文件中。
请勿改动主函数main和其他函数中的任何内容,仅在
函数fun的花括号中填入你编写的若干语句。
#include
void fun(char *a,int n,int h,int e)
{
}
main()
{char s[81],*t,*f;int m=0,tn=0,
fn=0;void NONO();
printf(”Enter a string:\n”);
gets(s);
t=f=s;
while(*t)(t++;m++;)
t--;
while(*t==’*’){t--;tn++;)
while(*f==’*’){f++;fn++;)
fun(s,m,fn,tn);
printf(”The string after deleted:
\n”);puts(s);
NONO();
}
void NONO()
(/*本函数用于打开文件,输入数据,调用函
数,输出数据,关闭文件。*/
FILE*in,*out;
int i;char s[81],*t,*f ;
int m=0,tn=0,fn=0;
in=fopen(”in.dat”,”r”);
out=fopen(”out.dat”,”W”);
for(i=0;i<10 ; i++){
fscanf(in,”%s”,s);
t=f=s;
m=0;tn=0;fn=0;
while(*t){t++;m++;)
t--;
while(*t==’*’){t--;tn++;}
while(*f==’*’){f++;fn++;}
fun(s,m,fn,tn);
fprintf(out,”%s\n”,s);
}
fclose(in);
fclose(out);
}
选项
答案
char*p=a; int j=0,len=0; while(*p){p++; len++;} while(j
解析
(1)主函数中,首先统计字符串长度、前导和尾部"*"号的数量,把这些参数传给函数fun。
(2)根据字符串长度,前导以及尾部"*"号统计的数目,确定执行字符移动的起始位置。
(3)在循环中依次执行字符的移动。
转载请注明原文地址:https://www.kaotiyun.com/show/yPJp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
函数fun的功能是:根据以下公式求p的值,结果由函数值返回。m与n为两个正数且要求m>n。例如:m=12,n=8时,运行结果应该是495.000000。请在题目的空白处填写适当的程序语句,将该程序补充完整。#include<con
若已知a=10,b=20,则表达式!a<b的值为【】。
若有以下的说明,对初值中整数2的正确引用方式是()。staticstruct{charch;inti;doublex;}a[2][3]={{{’a’,1,3,45},{’b’,
若有说明chars1[30]="Thecity",s2[]="isbeautiful";,则在使用函数strcat(s1,s2)后,结果是()。
设已执行预编译命令#include<string.h>,以下程序段的输出结果是()。chars[]="anapple";printf("%d\n",strlen(s));
以下正确的程序段是
阅读下面程序段,则执行后的结果为#include"stdio.h"main(){intm=4,n=2,k;k=fun(m,n);printf("%d\n",k);}fun(intm,intn
以下关于函数的叙述中正确的是 ______。
以下isprime函数的功能是判断形参a是否为素数,是素数,函数返回1,否则返回0。请填空。intisprime(inta){inti;for(i=2;i<=a/2;i++)
随机试题
新生儿溶血病当胆红素超过342μmol/L时,应首选
具有缓解胃肠痉挛作用的自主神经递质受体阻断剂是
关于腹膜的解剖生理,错误的是
5个月男婴,体温38℃,咳嗽、喘憋明显。查体:呼吸急促,鼻扇三凹征明显,双肺听诊满布哮鸣音,偶有闻中、小水泡音,胸部X片:从侧肺纹理增强,可见小片状阴影,肺气肿改变明显,可诊断为
《环境保护法》中规定环境保护的基本原则包括()。
某企业用银行存款购入一台需要安装的设备,增值税专用发票上注明的设备买价为20000元,增值税额为3400元,支付运杂费1000元,支付安装费3000元。设备安装完毕投入使用。要求:编制该企业支付价款与增值税和运杂费、安装费、设备交付使用的会计分录。
海洋货物运输保险的费率主要包括()
联合试运转费是指按照设计规定的工程质量标准,进行整个车间的有负荷和无负荷联合试运转时发生的()。
为了调查当代大学生的阅读现状,某调查小组列举了40部文学作品,请60名在校大学生选择他们已经阅读或正在阅读的作品。调查结果显示:大多数大学生只读过或正在阅读其中的6到8部作品,仅少数大学生读过30部以上,甚至有的大学生一部也没有读过。其中,《小时代》读过的
TheMid-summerDay.ahundred-year-oldtraditioninScandinavia,fallsonJune22ndor23rd,whenthesunwillreachitshighest
最新回复
(
0
)