首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
规定输入的字符串只包含字母和*号。请编写函数fun,它的功能是:将字符串中的前导*号全部删除,中间和尾部的*号不删除。例如,字符串中的内容为:*******A*BC*DEF*G****,删除后,字符串中的内容应当是:A*BC*DEF*G****。在编写函数
规定输入的字符串只包含字母和*号。请编写函数fun,它的功能是:将字符串中的前导*号全部删除,中间和尾部的*号不删除。例如,字符串中的内容为:*******A*BC*DEF*G****,删除后,字符串中的内容应当是:A*BC*DEF*G****。在编写函数
admin
2019-09-02
32
问题
规定输入的字符串只包含字母和*号。请编写函数fun,它的功能是:将字符串中的前导*号全部删除,中间和尾部的*号不删除。例如,字符串中的内容为:*******A*BC*DEF*G****,删除后,字符串中的内容应当是:A*BC*DEF*G****。在编写函数时,不得使用C语言提供的字符串函数。
注意:部分源程序在文件PROG1.C中。
请勿改动主函数mam和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
#include<stdio.h>
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.dat","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==’*’)p++; wh.ile(*p){ a[j++]=*p; p++;} a[j]=’\0’;
解析
该程序功能是将字符串中的前导“*”号全部删除,中间和尾部的“*”号不删除。本题的解题过程首先确定由串起始位置开始的第一个非“*”进行判断,将不是“*”的字符拷贝到字符串。
(1)首先,使用一个指针p指向串的起始位置,然后对指针p指向的字符进行判断,并且如果是“*”,那么跳过该字符,这样确定了由头开始的第一个非“*”的位置。
(2)然后,在循环过程中将第一个非“*”字符起始到串尾的字符拷贝到字符串a。
(3)最后,在新生成的字符串尾加’\0’。
转载请注明原文地址:https://kaotiyun.com/show/pdRp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
给定程序MODI1.C中函数fun的功能是:求整数x的y次方的低3位值。例如,整数5的6次方为15625,此值的低3位值为625。请改正函数fun中指定部位的错误,使它能得出正确的结果。注意:不要改动main函数,不得增行或删行,也不得
函数fun的功能是:计算直到=le-6);returnf;}main(){doublex,y;x=2.5;y=fun(x);printf("inTheresultis:in"
程序通过定义学生结构体变量,存储了学生的学号、姓名和3门课的成绩。函数fun的功能是对形参b所指结构体变量中的数据进行修改,最后在主函数中输出修改后的数据。例如:b所指变量t中的学号、姓名、和三门课的成绩依次是:10002、"ZhangQi"、9
阅读以下程序#includemain(){intcase;floatprintf;printf("请输入2个数:"):scanf("%d%f",&case,&printF);printf("%d%f\n",case,printF);}
C语言中char类型数据占字节数为
设有如下的说明和定义struct{inta;char*s;)x,*p=&x;x.a=4;x.s=hello";则以下叙述中正确的是
若以下选项中的变量a,b,y均已正确定义并赋值,则语法正确的switch语句是
有下列程序:#includevoidfun(int*a,intn)/*fun函数的功能是将a所指数组元素从大到小排序*/{intt,i,j;for(i=0;i<n-1;j++)for(j=i+1;j<n;j++)if(a[
若k是int类型变量,且有以下for语句1for(k=-1;k<0;k++)printf("*\n");下面关于语句执行情况的叙述中正确的是
关于C语言标识符,以下叙述错误的是()。
随机试题
杜甫《兵车行》交代了造成“边庭流血成海水”的原因在于外族的入侵。()
下列各状态不属于初级生态系统的有()
旱生演替系列的先锋群落是_______。
须考虑舒适和安全两个主要因素的环境是
马巴贝斯虫病的传播媒介是
发热的判断标准是指人体昼夜体温波动超过1℃,腋下温度超过()。
某软件生产企业(位于市区)于2014年成立,可享受软件企业的相关税收优惠政策。该企业2014年亏损300万元,2015年盈利500万元,2016年盈利800万元。该企业2017年1月至11月销售(营业)收入9000万元,可扣除的销售成本、费用、税金7500
刑事诉讼法规定,对驳回申请回避的决定,可以申请复议的主体不包括:
一般人总会这样认为,既然人工智能这门新兴学科是以模拟人的思维为目标,那么,就应该深入地研究人的生理机制和心理机制。其实,这种看法很可能误导这门新兴学科。如果说,飞机发明的最早灵感是来自于鸟的飞行原理的话,那么,现代飞机从发明、设计到不断改进,没有哪一项是基
下面不属于软件设计原则的是
最新回复
(
0
)