首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
规定输入的字符串中只包含字母和*号。请编写函数fun,其功能是:将字符串中的前导*号全部移到宁符串的尾部。 例如,字符串中的内容为“*******A*BC*DEF*G****”,移动后,字符串中的内容应当是“A*BC*DEF*G**********
规定输入的字符串中只包含字母和*号。请编写函数fun,其功能是:将字符串中的前导*号全部移到宁符串的尾部。 例如,字符串中的内容为“*******A*BC*DEF*G****”,移动后,字符串中的内容应当是“A*BC*DEF*G**********
admin
2021-02-25
72
问题
规定输入的字符串中只包含字母和*号。请编写函数fun,其功能是:将字符串中的前导*号全部移到宁符串的尾部。
例如,字符串中的内容为“*******A*BC*DEF*G****”,移动后,字符串中的内容应当是“A*BC*DEF*G**********”。在编写函数时,不得使用C语言提供的字符串函数。
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
试题程序:
#include<stdio.h>
#include<conio.h>
void fun(char*a)
{
}
main()
{
char s[81],*P;
char test[4][80]=(“********A*BC*DEF*G****”,”A******B*CD**EF*G*”,“****A****G*”,“*d**b**a**e*”};
int i;
printf(“Enter a string:\n:”);
gets(s);
fun(s);
printf(“The string after moveing:\n”);
puts(s);
}
选项
答案
void fun(char*a) { int i=0,n=0; char*p; p=a; /*判断*p是否是*号,并统计*号的个数*/ while(*p==‘*’) { n++,p++; } /*将前导*号后的字符传递给a*/ while(*p) { /*将*之后的字符串保存到a中*/ a[i]=*p; i++;p++; } while(n!=0) { /*在a后追加n个*号*/ a[i]=‘*’;i++,n一一; } a[i]=‘\0’;/*加上结束符*/ }
解析
函数fun的功能是:将字符串中的前导*号全部移到字符串的尾部。本题解题思路:首先定义一个指针并指向字符串的首地址;其次利用循环语句找出字符串的前导*号的个数n;然后利用循环语句把剩余的字符复制到另一个字符串中;最后在字符串的末尾接上n个*号。
转载请注明原文地址:https://www.kaotiyun.com/show/Uotp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
若有以下程序#include<stdio.h>int*f(int*s,int*t){int*k;if(*s<*t){k=s;s=t;t=k;}returns;}main(){inti=3,j=5,*p=&i,*q=&j,*r;r=f(p,q
下面的for语句的循环次数为()。for(x=1,y=0;(y!=19)&&(x
若有以下程序,则程序的输出结果是#includemain(){inta=0,b=0,c=0;c=(a-=++A),(a+=b,b+=4);printf("%d,%d,%d\n",a,b,c);}
下面选项中的程序段,没有编译错误的是
在数据库中存储的是
表达式3.6-5/2+1.2+5%2的值是
以下选项中不能作为C语言合法常量的是
关于字符串的叙述中正确的是()。
设循环队列为Q(1:m),其初始状态为front=rear=m。经过一系列入队与退队运算后,front=15,rear=20。现要在该循环队列中寻找最大值的元素,最坏情况下需要比较的次数为()。
设一棵树的度为3,共有27个结点,其中度为3,2,0的结点数分别为4,1,10。该树中度为1的结点数为
随机试题
人力资源管理者应该具备哪些能力?
关于细胞间的信号传递过程,错误的是
在高峰强度持续时间长时,骨料生产能力根据储存量和()确定。
下列属于理财从业人员的专业化服务活动表现的有()。
在分税制体制下,中央或上级政府对下级财政实施转移支付的基本收据是( )。
有学者称,“立法者和裁判者在民事立法和司法的过程中应维持民事主体之间的利益均衡”。由此可以推知,他认为民事活动应当遵循()。
根据《民法总则》规定,向人民法院请求保护民事权利的诉讼时效期间为()。法律另有规定,依照其规定。
有良好的坚持性品质的小学生的表现是()。
尽管网络给人们带来了种种问题,但它并不可怕,网络不会制止人类的进步,它开辟的是一条挑战与机遇、艰辛与希望、发展与理想并存的道路。网络归根到底还是人的创造,不能单单从技术的角度来理解网络,网络给人类带来的究竟是幸福还是灾难,最终取决于人类自己,而不是网络技术
Thehealth-careeconomyisrepletewithunusualandevenuniqueeconomicrelationships.Oneoftheleastunderstanding【S1】______
最新回复
(
0
)