首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
假定输入的字符串中只包含字母和*号。请编写函数fun,它的功能是:只删除字符串前导和尾部的*号,串中字母之间的*号都不删除。形参n给出了字符串的长度,形参h给出了字符串中前导*号的个数,形参e给出了字符串中最后*号的个数。在编写函数时,不得使用C语言提供的
假定输入的字符串中只包含字母和*号。请编写函数fun,它的功能是:只删除字符串前导和尾部的*号,串中字母之间的*号都不删除。形参n给出了字符串的长度,形参h给出了字符串中前导*号的个数,形参e给出了字符串中最后*号的个数。在编写函数时,不得使用C语言提供的
admin
2013-03-29
23
问题
假定输入的字符串中只包含字母和*号。请编写函数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://jikaoti.com/ti/lBn0FFFM
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
结构化程序设计的3种结构是
以下程序的输出结果是【】。inta=1234;printf("%2d\n",a);
如果需要打开一个已经存在的非空文件“Demo"进行修改下面正确的选项是
以下程序的输出结果是()。#include<stdio.h>intfun(intn,int*s){intf1,f2;if(n==0||n==1)*s=1;else
若有说明chars1[30]="Thecity",s2[]="isbeautiful";,则在使用函数strcat(s1,s2)后,结果是()。
下面程序中有错误的行是()。(每行程序前面的数字表示符号)1main()2{3inta[3]={1};4inti;5scanf("%d",&a);6for(i-
设x为int型变量,执行以下语句,x=10;x+=x-=x-x;x的值为______。
以下函数rotate的功能是:将a所指N行N列的二维数组中的最后一行放到b所指二维数组的第0列中,把a所指二维数组中的第0行放到b所指二维数组的最后一列中,b所指二维数组中的其他数据不变。#defineN4voidrotate
设变量已正确定义,则以下能正确计算f=n!的程序段是 ______。
以下isprime函数的功能是判断形参a是否为素数,是素数,函数返回1,否则返回0。请填空。intisprime(inta){inti;for(i=2;i<=a/2;i++)
随机试题
世界上最早实行职位分类制度的国家是()
女,19岁,因急性白血病接受骨髓移植治疗,术后被安置于无菌病房中,根据病情,需限制亲属探视,在此期间患者常常出现心情烦躁、不安,针对此情况,心理治疗师指导其采用冥想结合深呼吸的方法来改善自己的情绪,这种应对方式属于
玩忽职守罪的犯罪主体是国家工作人员。()
(2011年多项选择第60题)管理外聘律师的原则有()。
木材干缩导致的现象有()。
现场处置方案应根据()逐一编制,做到事故相关人员应知应会,熟练掌握。
某棉纺企业为增值税一般纳税人,适用的增值税税率为16%,2019年3月1日,“应付职工薪酬”科目贷方余额为516000元(全部为工资),该企业2019年3月份发生的有关职工薪酬业务如下:(1)1日,企业租入房屋4套供管理人员免费使用,月租金共计120
心理健康的标准有哪些?
下列函数中,不是e2x-e-2x的原函数的是________。
Youwillhearanotherfiveshortrecordings.Foreachrecording,decidewhatproblemthespeakeristalkingabout.Write
最新回复
(
0
)