首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
假定输入的字符串中只包含字母和*号。请编写函数fun,它的功能是:除了尾部的*号之外,将字符串中其他*号全部删除。形参p已指向字符串中最后的一个字母。在编写函数时,不得使用C语言提供的字符串函数。 例如, 字符串中的内容为:****A*BC*DE
假定输入的字符串中只包含字母和*号。请编写函数fun,它的功能是:除了尾部的*号之外,将字符串中其他*号全部删除。形参p已指向字符串中最后的一个字母。在编写函数时,不得使用C语言提供的字符串函数。 例如, 字符串中的内容为:****A*BC*DE
admin
2019-03-19
66
问题
假定输入的字符串中只包含字母和*号。请编写函数fun,它的功能是:除了尾部的*号之外,将字符串中其他*号全部删除。形参p已指向字符串中最后的一个字母。在编写函数时,不得使用C语言提供的字符串函数。
例如, 字符串中的内容为:****A*BC*DEF*G*******,删除后,字符串中的内容应当是:ABCDEFG*******。
注意:部分源程序在文件PROG1.C中。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
#include
void fun(char *a, char *p)
{
}
main ()
{ char s[81],*t;
void NONO ();
printf("Enter a string:\n");
gets (s);
t=s;
while(*t)t++;
t-;
while(*t==’*’)t--;
fun(s , t);
printf("The string after
deleted: \n");puts (s);
NONO();
}
void NONO()
{/*本函数用于打开文件,输入数据,调
用函数,输出数据,关闭文件。 */
FILE *in, *out ;
int i ; char s[81],*t ;
in = fopen("in.dat","r");
out = fopen("out.dat","w");
for(i = 0 ; i < 10 ; i++) {
fscanf(in, "%s", s);
t=s;
while(*t)t++;
t--;
while (*t==’*’) t--;
fun(s,t);
fprintf(out, "%s\n", s) ;
}
fclose(in);
fclose(out); }
选项
答案
char *q=a; int j=0; while(*q&&q
解析
(1)首先,主函数中使指针移到字符串的最后一个字符,对字符串由串尾开始进行操作。
(2)然后,指针由尾开始向头移动,查找第一个非“*”号字符,指针t指向后一个非“*”,即从最后一个非“*”,字符开始的字符都不需要删除,将前面的其他“*”号全部删除后,将尾部的“*”字符往前移动即可。
(3)确定了字符数组的最后一个字符非“*”后,调用fun函数,在fun函数中,将原串中由起始位置的字符开始到最后一个非“*”逐个查询该字符是否是“*”字符,如果是则删除,并将后面的字符往前移动;然后将t之后的字符移动到前面,最后在字符串的后面添加“’\0’”即可。
转载请注明原文地址:https://www.kaotiyun.com/show/KBRp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
若有定义和语句: inta[10]={1,2,3,4,5,6,?,8,9,10},*p=a; 则不能表示a数组元素的表达式是()
若程序中已包含头文件stdio.h,以下选项能正确运用指针变量的程序段是()。
以下程序的输出结果是#includeintfun(intn,int*s){intf1,f2;if(n==0||n==1)*s=1;else{fun(n-1,&f1);fun(n-2,&f2);
下列程序的输出结果是______。#includesub1(chara,charb){charc;c=a;a=b;b=c;}sub2(char*a,charb){charc;c=*a;*a
将以下程序写成三目运算表达式是【】。if(a>b)max=a;elsemax=b;
Jackson方法是一种面向______的结构化方法。
若函数调用时,参数为基本数据类型的变量,下列叙述中正确的是()。
数据库管理系统提供给用户的接口是()
若执行下述程序时,若从键盘输入6和8时,结果为main(){inta,b,s;scanf("%d%d",&a,&b);s=aif(a<b)s=b;s*=s;
若按功能划分,软件测试的方法通常分为白盒测试方法和【】测试方法。
随机试题
特种设备使用单位应当建立特种设备安全技术档案,具体包括的内容有()。
加味逍遥散是在逍遥散的基础上加
对患有炭疽的家畜的粪便进行处理,下列方法错误的是
患者,女,36岁,近日因胃痛胀满、消化不良、便秘、痛经前来就医,经医生诊断,证属脾胃不和、积滞内停,于是选用六味安消散进行治疗。上题所选中成药的臣药为
甲因为随身携带的票据在乘车时遗失,向有管辖权的人民法院申请公示催告,法院受理后依法发出公告,在公示催告期间乙向法院申报。法院的下列做法中错误的是:()
纵观历史,多少清正廉洁之士流芳百世,多少贪官污吏遗臭万年。孟子曰:养心莫善于寡欲。修身养性最好的办法就是减少各种贪欲。君子在别人看不见、听不到的时候,都要谨慎自己的言行。孔子曰:君子坦荡荡,小人常戚戚。能做到“慎独”,做到“坦荡荡”,人生之路就不会出轨.就
谈谈“农二代”的问题及对策。
新民主主义的经济纲领强调保护民族工商业,其具体保护的对象是
Inthefollowingtext,somesentenceshavebeenremoved.ChoosethemostsuitableonefromthelistA—Gtofitintoeachofthe
AmericanCharacteristicsIndividualism,independence,andself-relianceareperhapsthemostdistinctiveAmericancharacter
最新回复
(
0
)