首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
规定输入的字符串中只包含字母和*号。编写函数fun,其功能是:除了字符串前导和尾部的*号外,将串中其他的*号全部删除。形参h已指向字符串中第—个字母,形参p指向字符串中最后一个字母。在编写函数时,不得使用C语言提供的字符串函数。 例如,若字符串中的
规定输入的字符串中只包含字母和*号。编写函数fun,其功能是:除了字符串前导和尾部的*号外,将串中其他的*号全部删除。形参h已指向字符串中第—个字母,形参p指向字符串中最后一个字母。在编写函数时,不得使用C语言提供的字符串函数。 例如,若字符串中的
admin
2018-03-28
58
问题
规定输入的字符串中只包含字母和*号。编写函数fun,其功能是:除了字符串前导和尾部的*号外,将串中其他的*号全部删除。形参h已指向字符串中第—个字母,形参p指向字符串中最后一个字母。在编写函数时,不得使用C语言提供的字符串函数。
例如,若字符串中的内容为“****A*BC*DEF*G********”,删除后,字符串中的内容应当是 “****BCDIgFG********”。
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
试题程序:
#include<stdio.h>
#include<conio.h>
#include<string.h>
void fun(char*a,Chr*h,Char*p)
{
}
main()
{
char s[81],*t,*f;
printf("Enter a string:\n");
gets(s);
t=f=S;
while(*t)
t++;
t一一;
while(*t==’*’)
t一一;
while(*f==’*’)
f++;
fun(s,f,t);
printf("The string after
deleted:\n");
puts(s);
}
选项
答案
void fun(char* a,char *h,char *p) { int i=0; char *q=a; /*将前导*号保存到a中*/ while(q<h) { a[i]=*q;q++;i++; } /*继续遍历数组*/ while(q<p){ if(*q!=’*’) { /*如果不是*保存到a中*/ a[i]=*q;i++; } q++; } /*将末尾*号保存到a中*/ while(*q) { a[i]=*q;i++;q++; } a[i]=’\0’; }
解析
本题的重点是要选择好判断条件,首先是需要判断前导*号的结束,然后判断是否指向最后一个字母,最后补充尾部*号,只要思路对了即可正确解答。
转载请注明原文地址:https://kaotiyun.com/show/Hxxp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
以下程序运行后的输出结果是【】。inta=5;fun(intb){staticinta=10;a+=b++;printf("%d",a);}main(){intc=
下面程序的运行结果是【】。intf(inta[],intn){if(n>1)returna[0]+f(&a[1],n-1);elsereturna[0];}main(){int
两次运行下面的程序,如果从键盘上分别输入3和2,则输出结果是()。#include<stdio.h>main(){intx;scanf("%d",&x);if(x++>2)printf("%d",x);
设有表示学生选课的三张表,学生表(学号,姓名,性别),课程表(课程号,课程名),选课成绩表(学号,课程号,成绩),则选课成绩表的关键字为()。
以下程序的输出结果是()。#includeintm=13;intfun(intx,inty){intm=2;return(x*y-m);}main(){
请在以下程序第一行的下划线处填写适当内容,使程序能正确运行。 【】(double,double); main( ) {doublex,y; scanf("%lf%lf",&x,&y); printf("%lf\n",ma
排序是计算机程序设计中的一种重要操作,常见的排序方法有插入排序、【】和选择排序等。
有以下程序:#include<stdio,h>#include<string,h>struetSTU{intnam;floatTotalSeore;};voidf(strnctSTUp){structSTUs[2
若有下列说明,则()不是对strcpy库函数的正确的调用。strcpy库函数用于复制一个字符串:char*str1="abcdt",str2[10],*str3="hijklmn",*str4[2],*str5="aaaa";
下列关于队列的叙述中正确的是
随机试题
对违约责任应采取无过错责任原则,以下可免除违约方责任的是()。
利用验潮站观测平均海面的确定方法包括()。
根据《建设工程施工专业分包合同(示范文本)》GF一2003一0213规定,下述说法中正确的有()。
旗形形成之前和被突破之后,成交量都不是很大。()
下图是“我国某湿润山区不同年代植被状况图”。20世纪50年代一支考察队从s点出发沿线考察该山区的自然资源,最终到达最高峰,考察日志中记录到“河谷地带都发育有河流,山区植被茂密”。据此回答下列问题。图中县界沿______分布。
新课程强调将学生学习知识的过程转化为形成正确价值观的过程,其价值观是指()
某人经过观察发现,某公司性格外向的职工每天都能按时上下班,而性格内向的职工每天都要在公司加班才能完成工作。由此他得出结论,性格外向的职工工作效率比性格内向的职工工作效率高。假设下列选项为真,则对题干结论最能起到削弱作用的是:
LANscanbeconnectedbyusingbridges,whichoperateinthe
类是一个支持集成的抽象数据类型,而对象是类的【】。
Whyaretheteenagersmadetolistentoorchestras?
最新回复
(
0
)