首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
假定输入的字符串中只包含字母和*号。请编写函数fun,它的功能是:删除字符串中所有的*号。在编写函数时,不得使用C语言提供的字符串函数。 例如,字符串中的内容为:****A*BC*DEF*G********,删除后,字符串中的内容应当是:ABCDE
假定输入的字符串中只包含字母和*号。请编写函数fun,它的功能是:删除字符串中所有的*号。在编写函数时,不得使用C语言提供的字符串函数。 例如,字符串中的内容为:****A*BC*DEF*G********,删除后,字符串中的内容应当是:ABCDE
admin
2013-04-02
29
问题
假定输入的字符串中只包含字母和*号。请编写函数fun,它的功能是:删除字符串中所有的*号。在编写函数时,不得使用C语言提供的字符串函数。
例如,字符串中的内容为:****A*BC*DEF*G********,删除后,字符串中的内容应当是:ABCDEFG。
注意:部分源程序在文件PROGl.C中。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
#include
void fun(char *a)
{
}
main()
{ char s[81];
void NONO();
printf(”Enter a string:\n”);
gets(s);
fun(s);
printf(”The string after deleted:
\n”);puts(s);
NONO();
}
void NONO()
{/*本函数用于打开文件,输入数据,调用函
数,输出数据,关闭文件。*/
FILE*in,*out;
int i;char s[81];
in=fopen(”in.daL”,”r”);
out=fopen(”out.dat”,”w”);
for(i=0;i<10 ; i++){
fscanf(in,”%s”,s);
fun(s);
fprintf(out,”%s\n”,s);
}
fciose(in);
fclose(out);
}
选项
答案
{ int j=0; char *p=a; while(*p){ if(*p !=’*’)a[j++]=*p; p++; } a[j]=’\0’; }
解析
(1)首先利用工作指针指向字符串,当指针不指向串尾时,就对字符串进行循环判断。
(2)在循环中利用if判断表达式,判断是字符是否为“*”,如果不是“*”将其拷贝到字符串,否则跳过“*”字符。
(3)所有字符处理完后,记得在新串s的末尾加上结束符“’\0’”。
转载请注明原文地址:https://kaotiyun.com/show/SJJp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
设函数fun的定义形式为: void fun(char ch,float x) { …… } 则以下对函数fun的调用语句中,正确的是 ______。
下列数据结构中,能用二分法进行查找的是 ______。
以下程序用于判断a、b、c能否构成三角形,若能,输出YES,否贝愉出NO。当给a、b、c输入三角形三条边长时,确定a、b、c能构成三角形的条件是需同时满足三个条件;a+b>c,a+c>b,b+c>a。请填空。main(){
有以下程序 int fun(int x[],int n) { static int sum=0,i; for(i=0;i<n;i++) sum+=x[i]; return sum
有以下程序 void swap(char *x,char *y) {char t; t=*x;*x=*y;*y=t; } main() {char *s1="
有以下程序 #include <stdio.h> main() {char c1,c2,c3,c4,c5,c6; scanf("%c%c%c%c",&c1,&c2,&c3,&c4); c
以下程序的功能是:求出数组x中各相邻两个元素的和依次存放到a数组中,然后输出。请填空。main(){intx[10],a[9],i;for(i=0;i<10;i++)scanf("%d",&x[i]);for(【
以下程序的功能是:利用指针指向三个整型变量,并通过指针运算找出三个数中的最大值,输出到屏幕上。请填空。main(){intx,y,z,max,*px,*py,*pz,*pmax;scanf("%d%d%d",&x,&y,&z
以下程序中函数f的功能是:当flag为1时,进行由小到大排序;当flag为0时,进行由大到小排序。 void f(int b[],int n,int flag) { int i,j,t; for(i=0;i<n-1;i++)
随机试题
德育过程的主要矛盾是教育者提出的道德要求与________已有品德水平。
电动机启动或运行时,定子与转子间发生冒出火花或烟气的现象是什么原因?
患者求医、医生向患者提供医疗服务,医生和患者不是两个陌生人之间的关系。他们之间具有______特点
A.确认为假药B.确认为劣药C.按假药论处D.按劣药论处超过有效期的药品()
银行与建筑工程公司订立保证合同、为其提供工程保函时,应采取的正确方式是()。
给定资料1.“请为6号小朋友的表演投票”“麻烦给我家孩子投票,每人每天可以投两票”……时下,针对学生(幼儿)的网络投票活动种类繁多,已经成为微信朋友圈的一道“风景”。市民H经常会收到朋友圈发来的网络投票链接。这些投票对象中,有些是朋友的孩子,有些是朋友
尼古丁:香烟
试论述洛克教育思想的主要内容。
简单劳动和复杂劳动的关系是()
AntsHaveBigImpactonEnvironmentas"EcosystemEngineers"ResearchbytheUniversityofExeterhasrevealedthatantshav
最新回复
(
0
)