首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
假定输入的字符串中只包含字母和*号。请编写函数fun,它的功能是:除了尾部的*号之外,将字符串中其他*号全部删除。形参p已指向字符串中最后的一个字母。在编写函数时,不得使用C语言提供的字符串函数。 例如,字符串中的内容为:****A*BC*DEF*
假定输入的字符串中只包含字母和*号。请编写函数fun,它的功能是:除了尾部的*号之外,将字符串中其他*号全部删除。形参p已指向字符串中最后的一个字母。在编写函数时,不得使用C语言提供的字符串函数。 例如,字符串中的内容为:****A*BC*DEF*
admin
2020-10-26
66
问题
假定输入的字符串中只包含字母和*号。请编写函数fun,它的功能是:除了尾部的*号之外,将字符串中其他*号全部删除。形参p已指向字符串中最后的一个字母。在编写函数时,不得使用C语言提供的字符串函数。
例如,字符串中的内容为:****A*BC*DEF*G*******,删除后,字符串中的内容应当是:ABCDEFG*******。
注意:部分源程序在文件PROGl.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()
{/*本函数用于打开文件,输入数据,调用函数,输出数据,关闭文件。 */
FTLE*in,*out;
int i;char s[81],*t ;
in=fopen("in.dat","r");
out=fopen("out.dat","w");
for(i=0;i<10;i++) {
fscarlf(in,"%s",s);
t=S;
while(*t)t++;
t--;
while(*t==’*’)t--;
fun(s,t);
fprintf(ouL,"%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://kaotiyun.com/show/lJ3p777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
下列定义数组的语句中,正确的是
以下选项中不合法的标识符是
设有定义:char*c;以下选项中能够使c正确指向一个字符串的是
要求通过while循环不断读入字符,当读入字母N时结束循环。若变量已正确定义,以下正确的程序段是
在嵌套使用if语句时,C语言规定else总是
若a是数值类型,则逻辑表达式(a==1)||(a!=1)的值是
设有定义:inta=0,b=1;,以下表达式中,会产生"短路"现象,致使变量b的值不变的是()。
下列关于数据库设计的叙述中,正确的是()。
在数据库中,数据模型包括数据结构、数据操作和()。
随机试题
肛管直肠疾病,下列哪一种可以发生恶变_______。
A.当跟调节静止时,平行光线经跟的屈光系统后聚焦在视网膜上B.当眼调节静止时,平行光线经眼的屈光系统后聚焦在视网膜前C.当眼调节静止时,平行光线经眼的屈光系统后聚焦在视网膜后D.眼球在不同子午线上屈光力不同,形成两条焦线E.眼的功能调节力下降近
关于报复陷害罪的说法,下列哪些选项是正确的?()
【背景材料】某建设项目有关数据如下:1.建设期2年,运营期8年,固定资产投资总额5000万元(不含建设期贷款利息),其中包括无形资产600万元。项目固定资产投资资金来源为自有资金和贷款,贷款总额2200万元,在建设期每年借入1100万元,贷
分包工程施工过程中,分包商因执行了工程师的错误指令而返工并造成损朱。对此损失( )。
国内某作家将其小说委托国内一位翻译译成英文后送交国外出版商出版发行。作家与翻译就翻译费达成协议如下:小说出版后作者署名,译者不署名;作家分两次向该翻译支付翻译费,一次是译稿完成后支付10000元人民币,另一次是小说在国外出版后将收入的10%支付给译者。已知
()以“建筑时间最久远、保存最完整”被誉为“天下第一庙”。
当企业的业务都实现计算机化后,那些从事计算机业务的企业却遭遇了_______。如果需要计算机化的业务流程没有增加,顾客对性能没有特别需求,他们就无法继续_______自己的产品。所以,所有与计算机相关的企业,都必须为已经得到满足的顾客们,提供一个购买他们更
Apairofdice,rolledagainandagain,willeventuallyproducetwosixes.Similarly,thevirusthatcausesinfluenzaisconstan
信息系统升级后,需要将数据从旧系统(包括手工系统)转换到新系统。以下关于数据转换的叙述中,不正确的是(69)。
最新回复
(
0
)