首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
规定输入的字符串中只包含字母和*号。编写函数fun,其功能是:删除字符串中所有的*号。编写函数时,不得使用C语言提供的字符串函数。 例如,字符串中的内容为“****A*BC*DEF*G*******”,删除后,字符串中的内容应当是“ABCDEFG”。 注意
规定输入的字符串中只包含字母和*号。编写函数fun,其功能是:删除字符串中所有的*号。编写函数时,不得使用C语言提供的字符串函数。 例如,字符串中的内容为“****A*BC*DEF*G*******”,删除后,字符串中的内容应当是“ABCDEFG”。 注意
admin
2017-02-24
45
问题
规定输入的字符串中只包含字母和*号。编写函数fun,其功能是:删除字符串中所有的*号。编写函数时,不得使用C语言提供的字符串函数。
例如,字符串中的内容为“****A*BC*DEF*G*******”,删除后,字符串中的内容应当是“ABCDEFG”。
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
试题程序:
#include<conio.h>
#include<stdio.h>
void fun(char*a)
{
}
void main()
{
char s[81];
print;f("Enter a string:\n");
gets(s);
fun(s);
printf("The string after deleted:\n");
puts(s);
}
选项
答案
void fun(char*a) { int i,j=0; for(i=0;a[i]!=’\0’;i++) if(a[i]!=’*’) a[j++]=a[i]; /*若不是要删除的字符’*’则保留*/ a[j]=’\0’; /*最后加上字符串结束符’\0’*/ }
解析
本题考查:删除字符串中所有*号,需用循环语句遍历字符串,用判断语句判断字符是否为*号,由此可以决定该程序应使用循环判断结构。
用循环操作从字符串开始往后逐个进行比较,若不是要删除的字符(用if(a
!=’*’)来控制)则保留。变量i和j用来表示原字符串的下标和删除*号后新字符串的下标。注意,下标变量j要从0开始,最后还要加上字符串结束标识‘\0’。
转载请注明原文地址:https://www.kaotiyun.com/show/00Dp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
以下程序的功能是建立一个带有头结点的单向链表,链表结点中的数据通过键盘输入,当输入数据为-1时,表示输入结束(链表头结点的data域不放数据,表空的条件是ph->next==NULL),请填空。#includestructlist{intd
以下程序的功能是:求出数组x中各相邻两个元素的和依次存放到a数组中,然后输出。请填空。main(){intx[10],a[9],I;for(I=0;I
以下程序的输出结果是【】。#includemain(){inta[5]={2,4,6,8,10},*p;p=a;p++;printf("%d",*p);}
下面程序的运行结果是【】。#include#defineSIZE12main(){chars[SIZE];intI;for(I=0;I
阅读以下程序及对程序功能的描述,其中正确的是#includemain(){FILE*in,*out;charch,infile[10],outfile[10];printf("Entertheinfilename:\n"
下列关于字符串的说法中错误的是
函数的值通过return语句返回,下面关于return语句的形式描述错误的是
若有以下函数首部intfun(doublex[10],int*n)则下面针对此函数的函数声明语句中正确的是
有以下程序intadd(inta,intb){return(a+b);}main(){intk,(*f)(),a=5,b=10;f=add;…}则以下函数调用语句错误的是
随机试题
组织结构设计的核心是()。
世界上的事物千差万别的原因是()
21世纪人人享有卫生保健的总体目标不包括
《支付结算办法》规定,票据金额以中文大写和阿拉伯数字同时记载,二者不一致的()。
已知市场组合的期望收益率为15%,无风险收益率为5%。某项金融资产的β值为0.5,则该项金融资产的期望收益率为()。
机动车交通事故责任强制保险与商业三责险的区别是()。
把下面六个图形分为两类,使得每一类图形都有各自的共同特征或规律,分类正确的一项是:
设实二次型f(x1,x2,x3)=(x1一x2+x3)2+(x2+x3)2+(x1+ax3)2,其中a是参数•(I)求f(x1,x2,x3)=0的解;(Ⅱ)求f(x1,x2,x3)的规范形.
If2x=3y=4z=20,then12xyz=
It’ssaidthemostexcitingkindofeducationisalsothemostpersonal.Nothingcan【C1】______thejoyofdiscoveringsomethin
最新回复
(
0
)