首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
假定输入的字符串中只包含字母和*号。请编写函数fun,它的功能是:只删除字符串前导和尾部的*号,串中字母之间的*号都不删除。形参n给出了字符串的长度,形参h给出了字符串中前导*号的个数,形参e给出了字符串中最后*号的个数。在编写函数时,不得使用C语言提供的
假定输入的字符串中只包含字母和*号。请编写函数fun,它的功能是:只删除字符串前导和尾部的*号,串中字母之间的*号都不删除。形参n给出了字符串的长度,形参h给出了字符串中前导*号的个数,形参e给出了字符串中最后*号的个数。在编写函数时,不得使用C语言提供的
admin
2013-03-29
56
问题
假定输入的字符串中只包含字母和*号。请编写函数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://kaotiyun.com/show/yPJp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
以下程序运行结果是【】。#include<stdio.h>longfib(intg){switch(g){case0:return0;case1:case
下面程序段的输出为#include"stdio.h"main(){printf("%d\n",12<<2);}
下列二维数组初始化语句中,不正确的是()。
以下程序的功能是输出如下形式的方阵:13141516910111256781234请填空。ma
以下函数sstrcat()的功能是实现字符串的连接,即将t所指字符串复制到s所指字符串的尾部。例如:s所指字符串为abcd,t所指字符串为efgh,函数调用后s所指字符串为abcdefgh。请填空。#include<string.h>v
设变量已正确定义,则以下能正确计算f=n!的程序段是 ______。
有以下程序段: int n,t=1,S=0; scanf("%d",&n); do{s=s+t;t=t-2;}while(t!=n); 为使此程序段不陷入死循环,从键盘输入的数据应该是 ______。
以下关于函数的叙述中正确的是 ______。
以下isprime函数的功能是判断形参a是否为素数,是素数,函数返回1,否则返回0。请填空。intisprime(inta){inti;for(i=2;i<=a/2;i++)
随机试题
男性,35岁,上腹痛2天,呕吐、腹胀,血淀粉酶750U(Somogyi),BP80/50mmHg,脉搏120次/分,最可能的诊断是
关于药品安全风险和药品安全风险管理措施的说法,错误的是()。
A.临床愈合期B.骨性愈合期C.组织愈合期D.纤维愈合期E.骨痂改造塑形期原始骨痂形成期又称()
宅基地使用权人对宅基地享有的权利是()。
资产负债率(),表明企业经营安全、稳健,具有较强的筹资能力,也表明企业和债权人的风险较小。
(2005年)下列氧化物中既可和稀H2SO4溶液作用,又可和稀NaOH溶液作用的是()。
下列选项是一般中、小城市干道网密度的建议值的是()。
下列选项中说法错误的是()。
认真阅读以下网页制作和网页编程的内容,回答问题1~5,将解答填入对应的解答栏内。(1)网页制作[说明]某网络资源站点用JSP实现了一个简单的验证码登录控制,网页效果如右图所示。[login.jsp文档的内容]
(1)Whatwelearnedaboutourselvesanewthisweekwassomethingthat,intruth,weknewalready.Werediscoveredasimple,huma
最新回复
(
0
)