首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
规定输入的字符串中只包含字母和*号。请编写函数fun,其功能是:除了字符串前导的*号之外,将串中其他*号全部删除。在编写函数时,不得使用C语言提供的字符串函数。 例如,字符串中的内容为“****A*BC*DEF*G*******”,删除后,字符串中
规定输入的字符串中只包含字母和*号。请编写函数fun,其功能是:除了字符串前导的*号之外,将串中其他*号全部删除。在编写函数时,不得使用C语言提供的字符串函数。 例如,字符串中的内容为“****A*BC*DEF*G*******”,删除后,字符串中
admin
2019-03-19
47
问题
规定输入的字符串中只包含字母和*号。请编写函数fun,其功能是:除了字符串前导的*号之外,将串中其他*号全部删除。在编写函数时,不得使用C语言提供的字符串函数。
例如,字符串中的内容为“****A*BC*DEF*G*******”,删除后,字符串中的内容应当是 “**** ABCDEFG”。
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
试题程序:
#include<string.h>
#include<stdio.h>
#include<conio.h>
void fun(char* a)
{
}
main()
{
char s[81];
printf("Enter astring:\n");
gets(s);
fun(s);
printf("The string after deleted:\n");
puts(s);
}
选项
答案
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’; }
解析
本题考查:指针型变量定义;while循环语句;if语句条件表达式;字符串结束标识‘\0’。
函数fun的功能:除了字符串前导的*号之外,将串中其他*号全部删除。解答本题,首先定义一个临时指针p,初始指向原串首地址;其次利用循环语句把字符串前导*号复制到原串;然后继续移动指针,把串中和串尾的非*号字符复制到原串;最后为修改后的字符串赋结束字符‘\0’。
要删除字符串中的指定字符,通常采用保留非指定字符的方法。可以将非指定字符保留在原串,即将需要保留的字符从原串的起始位置重新赋值;也可以保留到新串,即新建一个字符串,存放要保留的字符。
转载请注明原文地址:https://kaotiyun.com/show/mBRp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
以下语句或语句组中,能正确进行字符串赋值的是()。
以下不能正确进行字符串赋初值的语句是
在下列语句中,其含义为“q是一个函数指针,该指针指向整型数据”的定义语句是()。
若有以下程序:main(){inta[4][4]={{l,2,-3,-4},{0,-12,-13,14},{-21,23,0,-24},{-31,32,-33,0}};inti,j,s=0;for(i
下列软件系统结构图的宽度为【】。
下列选项中,不是一个算法的基本特征的是()。
以下程序运行后的输出结果是【 】。main(){inta=3,b=4,c=5,t=99;if(b<a&&a<c)t=a;a;a=c;c=tif(a<c&&b<c)t=b;b=a;a=t;prin
将以下程序写成三目运算表达式是【】。if(a>b)max=a;elsemax=b;
下列数据结构中,能用二分法进行查找的是()。
数据结构作为计算机的一门学科,主要研究数据的逻辑结构、对各种数据结构进行的运算,以及
随机试题
男性,40岁,因汽油着火烧伤总面积80%,Ⅲ度烧伤50%,应采取治疗
根据《医疗事故处理条例》的规定,医疗机构发生重大医疗事故时,主管部门接到报告后应立即
某市属工程公司在市内高架线路的混凝土工程施工过程中出现了局部坍塌事故,经调查组的技术鉴定认为是由于施工单位拆模过早,混凝土未达到足够的强度所造成的。由于及时发现没有造成重大损失,估计损失不足4万元,且未造成人身伤亡。问题:此质量事故的调查组应由谁组织
基金管理人的合规管理部门实施的合规风险评估和测试,包括()。Ⅰ.通过现场审核对各项政策和程序的合规性进行测试Ⅱ.询问政策和程序存在的缺陷,并进行相应调查Ⅲ.合规性测试结果通过合规风险报告路线向上报告
隐性课程
已知+n2+25=10n,且,a≠b≠c,则代数式m+n+(a+b+c)2的值为().
根据《刑事诉讼法》的相关规定,下列哪一案件是由高级人民法院管辖的第一审刑事案件?()
张研究员的反驳,基于以下哪项假设?Ⅰ.肺癌患者的自我保健意识对于其疾病的早期确诊起到重要作用。Ⅱ.肺癌的早期确诊对延长患者的生存年限起到重要作用。Ⅲ.对肺癌的早期确诊技术是衡量防治肺癌医疗水平的一个重要方面。以下哪项如果为真,能最为有力地指出李工
Readthefollowingpassageandchoosethebestwordforeachspace.Moneyspentonadvertisingismoneyspentaswellasany
Theymusthavestayedathotellastnight,______?
最新回复
(
0
)