首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
规定输入的字符串中只包含字母和*号。编写函数fun,其功能是:删除字符串中所有的*号。编写函数时,不得使用C语言提供的字符串函数。 例如,字符串中的内容为“****A*BC*DEF*G*******”,删除后,字符串中的内容应当是“ABCDEFG”
规定输入的字符串中只包含字母和*号。编写函数fun,其功能是:删除字符串中所有的*号。编写函数时,不得使用C语言提供的字符串函数。 例如,字符串中的内容为“****A*BC*DEF*G*******”,删除后,字符串中的内容应当是“ABCDEFG”
admin
2018-03-28
44
问题
规定输入的字符串中只包含字母和*号。编写函数fun,其功能是:删除字符串中所有的*号。编写函数时,不得使用C语言提供的字符串函数。
例如,字符串中的内容为“****A*BC*DEF*G*******”,删除后,字符串中的内容应当是“ABCDEFG”。
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
试题程序:
#include<conio.h>
#include<stdio.h>
void fun(char* a)
{
}
void main()
{
char s[81];
printf("Enter a string:\
n");
gets(s);
fun(s);
printf("The string after
deleted:\n");
puts(s);
}
选项
答案
void fun(cnar*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://kaotiyun.com/show/GDxp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
有以下程序:#include<stdio.h>intf(inta)returna%2;}main()ints[8]={1,3,5,2,4,6},i,
字符串“\\\”ABCDEF\“\\”的长度是()。
有三个关系R?S和T如下:则由关系R和S得到关系T的操作是
若有以下程序main(){intp,a=5;if(p=a!=0)printf("%d\n",p);elsepfintf("%d\n",p+2);}执行后输出结果是
对于长度为n的顺序存储的线性表,当随机插入和删除一个元素时,需平均移动元素的个数为【】。
有以下程序 #include<stdio.h> main() { FILE *fp;int i,a[6]={1,2,3,4,5,6}; fp=fopen("d3.dat","w+b"); fwrite(a.sizeof
有以下程序:#include<stdio.h>main()}chara,b,e,d;seanf("%e,%e,%d,%d",&a,&b,&c,&d);printf("%c,%c,%e,%c\n",a,b,c,
对长度为n的线性表排序,在最坏情况下,比较次数不是n(n-1)/2的排序方法是
以下不正确的转义字符是()。
若语句“t=fun(fun(x,y,a),(a+b,a+C,x+y+z);”对fun函数的调用正确,则fun函数的形参个数为()。
随机试题
在四逆散中柴胡的配伍意义是()(1992年第147题)
下列哪种免疫球蛋白在寄生虫感染患者血清中浓度可升高
下面哪一项是使人群易感性升高的因素
蜡在高温时融化,沥青黏度和温度敏感性的变化规律是()。
高峰小时一个信号周期进人交叉口左转车辆大于()时,应增辟左转专用车道。
施工质量计划应由()编制。
不能作为设备更新估算依据的是设备的()。
下列结论正确的是()。
某国一个足球杂志报道说,30年来该国足球甲级联赛的冠军都是通过假球决出来的。该杂志还给出证据说,有一位不愿透露姓名的参赛队员告诉记者,他和他的队友曾收取了20万美元的贿赂,于是他们在一场关键性的比赛中踢假球,最终让另一支球队获胜。但是,该国足球联赛主席对这
[*]
最新回复
(
0
)