首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
假定输入的字符串中只包含字母和*号。请编写函数fun,它的功能是:删除字符串中所有的木号。在编写函数时,不得使用C语言提供的字符串函数。 例如,字符串中的内容为:****A*BC*DEF*G*******,删除后,字符串中的内容应当是:ABCDEF
假定输入的字符串中只包含字母和*号。请编写函数fun,它的功能是:删除字符串中所有的木号。在编写函数时,不得使用C语言提供的字符串函数。 例如,字符串中的内容为:****A*BC*DEF*G*******,删除后,字符串中的内容应当是:ABCDEF
admin
2016-10-29
63
问题
假定输入的字符串中只包含字母和*号。请编写函数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);
}
fclose(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://www.kaotiyun.com/show/AjDp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
标准库函数fgets(s,n,file)的功能是()。
下列程序段的输出结果为()。#include<stdio.h>main(){staticchara[]="language";char*p;
下列程序的输出结果是()。#include<stdio.h>intfun(intx){inta;if(x==0‖x==1)re
设a.b、c、d、m、n均为int型变量,且a=5、b=6、c=7、d=8、m=2、n=2,则逻辑表达式(m=a>B)&&(n=c>D)运算后,n的值为______。
设有定义“struct{inta;floatb;charc;}abc,*p_abc=&abc;”,则对结构体成员a的引用方法可以是abc.a和p_abc【】a。
设变量已正确定义为整型,则表达式n=i=2,++i,i++的值为【】。
已知字母A的ASCII码值是65,字母a的ASCII码值是97,以下程序______。main(){chara=’A’;intb=20;pxintf("%d,%o",(a=a+a
以下程序的功能是进行位运算:main(){unsignedchara,b;a=7^3;b=~4&3;printf("%d%d\n",a,b);}程序运行后的输出结果是______。
随机试题
甲公司为一家在深圳证券交易所上市的企业,主要从事饮料包装成套设备的研发、生产和销售。2015年度,甲公司发生的部分业务资料如下:(1)2015年2月5日,甲公司通过全国中小企业股份转让系统以每股5元的价格购入A公司股票2000万股,取得A公司40%有表决
按照执业医师法规定,应当进行重新注册的是中止医师执业活动一定期限以及本法第十五条规定的情形消失,申请重新执业的。"一定期限"是指
有关SARS-CoV的描述,不正确的是
重型肝炎时应用"乳果糖"的目的是
简述政策对法律的作用与相互联系。
下列操作中,可能会导致计算机感染病毒的有()。
简述认知的教学目标分类。
若(x一i)i=y+2i,x,y∈R,则复数x+yi=().
在西西里的一处墓穴里,发现了一只陶瓷花瓶。考古学家证实这只花瓶原产自希腊。墓穴主人生活在2700年前,是当时的一个统治者。因此,这说明在2700年前,西西里和希腊间已有贸易往来了。以下哪项是上述论证所必须假设的?
Readthenewsitembelowaboutacompanythatrunshealthandfitnessclubs.ChoosethebestwordtofilleachgapfromA,B,C
最新回复
(
0
)