首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
规定输入的字符串只包含字母和*号。请编写函数fun,它的功能是:将字符串中的前导,-号全部删除,中间和尾部的*号不删除。例如,字符串中的内容为:*******A*BC*DEF*G****,删除后,字符串中的内容应当是:A*BC*DEF*G****。在编写函
规定输入的字符串只包含字母和*号。请编写函数fun,它的功能是:将字符串中的前导,-号全部删除,中间和尾部的*号不删除。例如,字符串中的内容为:*******A*BC*DEF*G****,删除后,字符串中的内容应当是:A*BC*DEF*G****。在编写函
admin
2018-09-27
34
问题
规定输入的字符串只包含字母和*号。请编写函数fun,它的功能是:将字符串中的前导,-号全部删除,中间和尾部的*号不删除。例如,字符串中的内容为:*******A*BC*DEF*G****,删除后,字符串中的内容应当是:A*BC*DEF*G****。在编写函数时,不得使用C语言提供的字符串函数。
注意:部分源程序在文件PROGl.C中。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
1 #include<stdio.h>
2 void fun(char *a)
3 {
4 }
5 main()
6 { char s[81];
7 void NONO(),
8 printf(’’Enter a string:\n’’);gets(d);
9 fun(s);
10 printf(’’The string,after deleted:\n’’);puts(s);
11 NONO();
12 }
13 void NONO()
14 {/*本函数用于打开文件,输入数据,调用函数,输出数据,关闭文件。 */
15 FILE *in,*out ;
16 int i;char s[81];
17 in=fopen(’’in.dat’’,’’r’’);
18 out=fopen(’’out.dat’’,’’w’’);
19 for(i=0;i<10;i++) {
20 fscanf(in,’’%s’’,s);
21 fun(s);
22 fprintf(out,’’%s\n’’,s);
23 }
24 fclose(in);
25 fclose(out);}
选项
答案
1 int j=0; 2 char *p=a; 3 while(*p==’*’)p++; 4 while((p){ 5 a[j++]=*p; 6 p++;} 7 a[j]=’\0’;
解析
该程序功能是将字符串中的前导“*”号全部删除,中间和尾部的“*”号不删除。本题的解题过程首先确定由串起始位置开始的第一个非“*”进行判断,将不是“*”的字符拷贝到字符串。
(1)首先,使用一个指针p指向串的起始位置,然后对指针p指向的字符进行判断,并且如果是“*”,那么跳过该字符,这样确定了由头开始的第一个非“*”的位置。
(2)然后,在循环过程中将第一个非“*”字符起始到串尾的字符拷贝到字符串a。
(3)最后,在新生成的字符串尾加’\0’。
转载请注明原文地址:https://kaotiyun.com/show/a8xp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
设有下列程序:#include<stdio.h>#include<string.h>main(){inti;chars[10],t[10];
以下程序的输出结果是_______。main(){inta[4][4]={{1,3,5},{2,4,6},{3,5,7});Print("%d%d%d%d\n",a[0][3],a[l][2],a[2][1],
若有说明chars1[30]="abc",s2[]="defghi";,则在使用函数strcat(s1,s2)后,结果是()。
有如下程序: main() {char ch[2][5]={"6937","8254"},*p[2]; int i,j,s=0; for(i=0;i<2;i++)p[i]=ch[i]; for(i=0;i<2;i++) for(j=0;p[i][j]!=’
以下关于函数的叙述中正确的是______。
有以下程序段: typedef struct NODE {int num; struct NODE *next; }OLD; 以下叙述中正确的是 ______。
已知a所指的数组中有N个元素。。函数fun的功能是,将下标k(k>0)开始的后续元素全部向前移动一个位置填空。voidfun(inta[N],intk){inti:for(i=k;i
若有下列说明和语句,则对结构体变量st中成员i的引用方式不正确的是()。Structstu{inti;intname;}st,*p;p=&st;
设有定义:char*c;,以下选项中能够使字符型指针c正确指向一个字符串的是()。
随机试题
《HSE作业指导书》是用来指导生产岗位人员正确操作、规避()的程序文件。
在虚证的治疗中,重视脾胃,长于甘温补中的医家是( )在虚证的治疗中,重视肝肾,善用滋阴降火的医家是( )
选择性蛋白尿与非选择性蛋白尿的根本区别在于
损害尿道,产生结晶尿和血尿的药物是
根据《水电建设工程质量管理暂行办法》(电水农[1997]220号),监理单位对工程建设实施过程中设计与施工质量负()。
公司反收购战略中,()不属于保持公司控制权策略。
旅游投诉处理机构处理旅游投诉,应当立案办理,填写《旅游投诉立案表》,并附有关投诉材料,在受理投诉之日起()内,将《旅游投诉受理通知书》和投诉书副本送达被投诉人。
能认识到自己的缺点是不容易的,能改正自己的缺点更不容易。请结合自身经历举例说明。
根据鲁利亚的观点,由边缘系统与脑干网状结构等组成的机能系统是
Millionsofhamburgersareeatenbypeopleineverycorneroftheworldeveryday.TogetherwithhotdogsandCoca-Cola,hamburg
最新回复
(
0
)