首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC++2010打开考生文件夹下prog1中的解决方案。此解决方案的项目中包含一个源程序文件prog1.c。在此程序中,规定输入的字符串中只包含字母和*号。请编写函数fun,其功能是:将字符串尾部的*号全部删除,前面和中间的*号不动。 例如,字符串中的
使用VC++2010打开考生文件夹下prog1中的解决方案。此解决方案的项目中包含一个源程序文件prog1.c。在此程序中,规定输入的字符串中只包含字母和*号。请编写函数fun,其功能是:将字符串尾部的*号全部删除,前面和中间的*号不动。 例如,字符串中的
admin
2018-06-29
40
问题
使用VC++2010打开考生文件夹下prog1中的解决方案。此解决方案的项目中包含一个源程序文件prog1.c。在此程序中,规定输入的字符串中只包含字母和*号。请编写函数fun,其功能是:将字符串尾部的*号全部删除,前面和中间的*号不动。
例如,字符串中的内容为:“****A*BC*DEF*G******”,删除后,字符串中的内容应当是:“****A*BC*DEF*G”。在编写函数时,不得使用C语言提供的字符串函数。
注意:部分源程序在文件PROG1.C中。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
#include<stdio.h>
void fun(char*a)
{
}
main( )
{char s[81];void NONO( );
prinff("Enter a string:\n");gets(s);
fun(s);
prinff("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);
fprinff(out,"%s\n",s);
}
fclose(in);
fclose(out);
}
选项
答案
void fun(char*a) { while(*a!=’\0’) a++: a--;/*指针a指向字符串的尾部*/ while(*a==’*’) a--;/*指针a指向最后一个字母*/ *(a+1)=’\0’;/*在字符串最后加上结束标志符*/ }
解析
对于一个字符串要删除其尾部的*号,只需要在最后一个不是*号的字符后面加上结束符号‘\0’。具体操作为:首先找到字符串的结尾,然后从最后一个字符开始往前逐个判断是否为*号,直到找到非*号字符为止,最后在该字符后面加上结束符号’\0’。
转载请注明原文地址:https://kaotiyun.com/show/w3xp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
有以下程序:main(){ints=0,a=1,n;scanf("%d",&n);do{s+=1;a=a-2;}while(a!=n);printf("%d\n",s);
有以下程序#includevoidfun(int*s,intn1,intn2){inti,j,t;i=n1;j=n2;while(i
若要求从键盘读入含有空格字符的字符串,应使用函数
线性表的存储结构主要分为顺序存储结构和链式存储结构。队列是一种特殊的线性表,循环队列是队列的【 】存储结构。
以下程序运行后的输出结果是______。#include<string.h>main(){charch[]="abc",x[3][4];inti;for(i=0;i<3;i++)strc
以下不能正确计算代数式sm2()值的C语言表达式是
有如下程序main(){charch[2][5]={"6937","8254"},*p[2];inti,j,s=0;for(i=0;i
若有以下说明和定义 fun(int*c){...} main() { int(*a)()=fun,(*b)(),w[10],c; } 在必要的赋值之后,对fun()函数的正确调用语句是______。
数据库系统的三级模式分别为【】模式、内部级模式与外部级模式。
下列关于软件测试的目的和准则的叙述中,正确的是()。
随机试题
公安机关办理治安案件中,对扣押的物品,满6个月无人对该财产主张权利或者无法查清权利人的,应当公开拍卖或者按照国家有关规定处理,所得款项上缴()。
在单相桥式整流电路中,如果有两只二极管断路,或一只二极管断路,或一只二极管反接,电路各会出现什么现象?
男性,60岁。反复哮喘40余年,活动后气短10余年,间断双下肢水肿5年,加重1天入院,吸烟史40年。查体:嗜睡,口唇发绀,颈静脉怒张,桶状胸,双肺可闻及干湿啰音,心率110次/分,心率整,肝肋下3.0cm,双下肢水肿。血气分析示pH7.26,PaO245m
A.肝内胆道出血B.门静脉高压症C.消化道溃疡出血D.胃癌出血E.应激性溃疡出血上消化道出血一次出血量不超过500ml的是
税务机关通过下列指标中的(),可以分析企业是否有多列成本、费用等问题。
关于岗位的平衡计分卡,说法错误的是()
用户可以用IE提供的()功能来保存自己常去访问的站点网址,以便日后冉次方问时可以从列表中选择。
神经一体液一免疫调节网络是人体维持稳态的主要调节机制,下图表示排尿的调控过程,请回答以下问题。膀胱的肌肉收缩引起排尿,尿液流经尿道刺激尿道时,使膀胱的肌肉进一步收缩,此过程属于_______(正/负)反馈调节,请举一例与之不同的反馈调节方式_____
小区内王女士心爱的宠物狗死了,打算将狗埋在小区的绿化带中,邻居李先生路过此处看到后便去制止,双方因此发生争执,围观的居民也纷纷指责王女士。如果你是小区物业的工作人员,你该怎么办?
有如下程序:#includeusingnamespacestd;classA{public:staticinta:voidinit(){a=1;}A(inta=2){i
最新回复
(
0
)