首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
假定输入的字符串中只包含字母和*号。请编写函数fun,其功能是:除了尾部的*号之外,将字符中的其他*号全部删除。形参p已指向字符串中最后的一个字母。在编写函数时,不得使用C语言提供的字符串函数。 例如,字符串中的内容为* * * * A*BC*DEF*G*
假定输入的字符串中只包含字母和*号。请编写函数fun,其功能是:除了尾部的*号之外,将字符中的其他*号全部删除。形参p已指向字符串中最后的一个字母。在编写函数时,不得使用C语言提供的字符串函数。 例如,字符串中的内容为* * * * A*BC*DEF*G*
admin
2019-04-14
52
问题
假定输入的字符串中只包含字母和*号。请编写函数fun,其功能是:除了尾部的*号之外,将字符中的其他*号全部删除。形参p已指向字符串中最后的一个字母。在编写函数时,不得使用C语言提供的字符串函数。
例如,字符串中的内容为* * * * A*BC*DEF*G* * * * * * *,删除后,字符串中的内容应当足ABCDEFG* * * * * * *。
注意:请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
试题程序:
#include <stdio.h>
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);
}
选项
答案
void fun((char *a,char *p) { char *t=a; for(;t< =p;t+ +) if(*t!=′*′) *(a+ +)=*t; for(;*t!=′\0′;t+ +) *(a+ +)=*t; *a=′\0′; /*在字符串最后加上字符串结束标识*/ }
解析
本题考查:删除字符串中非尾部*号,删除的主要思想就是把不删除的字符保留起来。本题用两个循环语句来实现。第1个循环的作用是将指针p所指字母以前所有非*号的字符保留下来,即删除指针p以前所有的*号。第2个循环的作用是将指针p以后的所有*号保留下来。最后在新串的结尾加上结束符。
转载请注明原文地址:https://www.kaotiyun.com/show/E2Rp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
以下程序的输出结果是______。main(){inta[4][4]={{1,3,5},{2,4,6},{3,5,7}};printf("%d%d%d%d\n",a[0][3],a[1][2],a[2][1];a
下面程序的运行结果是______。main(){unsigneda=3,b=10;printf("%d\n",a<<2|b>>1);}
有以下程序#include#includeStructA{inta;charb[10];doublec;};structAf(structAt);main(){stru
要求以下程序的功能是计算main(){intn;floats;S=1.0;for(n=10;n>1;n--)s=S+1/n;printf("%6.4f\n",
以下程序用于判断a、b、c能否构成三角形,若能,输出YES,否则输出NO。当给a、b、c输入三角形三条边长时,确定a、b、c能构成三角形的条件是需同时满足三个条件:a+b>c,a+c>b,b+c>a。请填空。main(){floa
有以下程序:main(){chara1=’M’,a2=’m’;printf("%c\n",(a1,a2));}以下叙述中正确的是()。
设有定义语句intx[6]=(2,4,6,8,5,7.),*p=x,i;要求依次输出x数组6个元素中的值,不能完成此操作的语句是
现有以下结构体说明和变量定义,如图所示,指针p、q、r分别指定一个链表中连续的3个结点。structnode{hardata;structnode*next;}*p,*q,*r;现要将q和r所指结点交换前后位
一个工作人员可以使用多台计算机,而一台计算机可被多个人使用,则实体工作人员与实体计算机之间的联系是()。【10年9月】
以下正确的字符串常量是
随机试题
称为"十二经之海"的是:
下述哪项不是新生儿免疫功能的特点
A、治愈率,显效率,好转率等B、适当的用药时间C、风险/效果比D、成本/效果比E、适当的途径、剂量和疗程判断药物有效性的指标()
采用普通连通管测试结构静挠度,其分辨力可达到0.1mm。()
既是可能引起风险出现的因素,又属于建设工程项目风险类型中的技术风险的是( )。
企业具有二重性,它既是生产力的组织形式,又体现一定的()。
景区讲解员要努力做到导游安排上的活跃生动,做好讲解与()的有机结合。
初级群体、首属群体(中国传媒大学2018年研)
如下图所示,网络站点A发送数据包给B,在数据包经过路由器转发的过程中,封装在数据包3中的目的IP地址和目的MAC地址是()。
Opinionpollsarenowbeginningtoshowareluctantconsensusthat,whoeveristoblameandwhateverhappensfromnowon,highu
最新回复
(
0
)