首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
规定输入的字符串中只包含字母和*号。请编写函数fun,其功能是:除了字符串前导的*号之外,将串中其他*号全部删除。在编写函数时,不得使用C语言提供的字符串函数。 例如,字符串中的内容为:“****A*BC*DEF*G*******”,删除后,字符串中的内容
规定输入的字符串中只包含字母和*号。请编写函数fun,其功能是:除了字符串前导的*号之外,将串中其他*号全部删除。在编写函数时,不得使用C语言提供的字符串函数。 例如,字符串中的内容为:“****A*BC*DEF*G*******”,删除后,字符串中的内容
admin
2020-11-27
48
问题
规定输入的字符串中只包含字母和*号。请编写函数fun,其功能是:除了字符串前导的*号之外,将串中其他*号全部删除。在编写函数时,不得使用C语言提供的字符串函数。
例如,字符串中的内容为:“****A*BC*DEF*G*******”,删除后,字符串中的内容应当是:“****ABCDEFG”。
注意:部分源程序在文件PROG1.C中。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
#include<stdio.h>
void fun(char*a)
{
}
main()
{char s[81];void NONO();
printf("Enter a string:\n");gets(s);
fun(s);
printf("The string after deleted:\n");puts(s);
NONO();
}
void NONO()
{/*本函数用于打开文件,输入数据,调用函数,输出数据,关闭文件。*/
FILE*in,*out;
int i;char s[81];
in=fopen("in.dat","r");
out=fopen("out.dat","w");
for(i=0;i<10;i++)
{
fscanf(in,"%s",s);
fun(s);
fprintf(out,"%s\n",s);
}
fclose(in);
felose(out);
}
选项
答案
void fun(char*a) { int i=0: char*p=a; while(*p&&*p==’*’) { a[i]=*p; i++; p++; } while(*p) { if(*p!=’*’) {a[i]=*p;i++;} p++; } a[i]=’\0’; }
解析
函数fun的功能:除了字符串前导的*号之外,将串中其他*号全部删除。解答本题,
(1)定义一个临时指针p,初始指向原串首地址;
(2)利用循环语句把字符串前导*号拷贝到原串;
(3)继续移动指针,把串中和串尾的非*号字符拷贝到原串;
(4)为修改后的字符串赋结束字符‘\0’。
转载请注明原文地址:https://kaotiyun.com/show/WY3p777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
设有定义:intx=11,y=12,z=0;,以下表达式值不等于12的是()。
关于程序的编译执行和解释执行,以下叙述中正确的是()。
以下程序的输出结果是()。#includemain(){inta=1,b=3;if((++a
有以下程序:#includemain(){printf(“%d\n”,NULL);}程序运行后的输出结果是()。
若有以下程序intf(inta[],intn){if(n>1){intt;t=f(a,n-1);returnt>a[n-1]?t:a[n-1];}elsereturna
下面结构体的定义语句中,错误的是
以下选项中合法的标识符是
有以下函数intfun(char*s){char*t=s;while(*t++);return(t-s);}该函数的功能是
下面对软件测试和软件调试有关概念叙述错误的是()。
有以下函数intfun(char*x,char*Y){intn=0;while((*x=*Y)&&*x!=’\0’){x++;y++;n++;}retumn;)函数的功能是
随机试题
赫尔巴特在《普通教育学》中提出的教学的四个阶段对我国乃至世界的教育实践产生了很大的影响。()
在双务合同中,当事人没有约定履行先后顺序时,一方在对方未为对待给付之前,拒绝对方请求履行合同的权利为【】
A.心脏毒性及骨髓抑制B.出血性膀胱炎C.叶酸代谢障碍D.运动障碍E.神经毒性甲氨蝶呤的不良反应是()。
桥梁防抛网主要包括( )。
下列情形中,违背一物一权原则的是()。
培训与开发需求分析的方法包括()。
某企业生产和销售甲、乙两种产品,产品的单位售价分别为2元和10元,边际贡献率分别是20%和10%,全年固定成本为45000元。要求;如果增加广告费5000元可使甲产品产品销售量增至60000件,而乙产品的销量会减少到20000件。试计算此时的盈亏l临
下图是海陆分布示意图,阴影部分为陆地,回答下列问题。附近有世界性大渔场的是()。
已知球的半径为2,相互垂直的两个平面分别截球面得两个圆,若两圆的公共弦长为2,则两圆的圆心距等于()。
材料1 丰收的季节,陕北高原到处是红彤彤的苹果。63岁的赵家村村民老赵看着果实,满眼的喜悦。借助改革开放的东风,四十年来他用劳动创造了财富,改变了全家的生活状况,也见证了他们村乃至黄土高原翻天覆地的变化。 1987年,来自远方的“包产到户”消息传遍
最新回复
(
0
)