首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
假定输入的字符串中只包含字母和*号。请编写函数fun,它的功能是:除了字符串前导和尾部的*号之外,将串中其他*号全部删除。形参h已指向字符串中第一个字母,形参p已指向字符串中最后一个字母。在编写函数时,不得使用C语言提供的字符串函数。 例如,字符串
假定输入的字符串中只包含字母和*号。请编写函数fun,它的功能是:除了字符串前导和尾部的*号之外,将串中其他*号全部删除。形参h已指向字符串中第一个字母,形参p已指向字符串中最后一个字母。在编写函数时,不得使用C语言提供的字符串函数。 例如,字符串
admin
2013-04-02
87
问题
假定输入的字符串中只包含字母和*号。请编写函数fun,它的功能是:除了字符串前导和尾部的*号之外,将串中其他*号全部删除。形参h已指向字符串中第一个字母,形参p已指向字符串中最后一个字母。在编写函数时,不得使用C语言提供的字符串函数。
例如,字符串中的内容为:****A*BC*DEF*G**********,删除后,字符串中的内容应当是:****ABCDEFG********。在编写函数时,不得使用c语言提供的字符串函数。
注意:部分源程序在文件PROGl.C中。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
#include
void fun(char *a, char *h,char *p)
{
}
main()
{char s[81],*t, *f;
void NONO ();
printf("Enter a string:\n");gets(s);
t=f=s;
while(*t)t++;
t--;
while(*t==’*’)t--;
while(*f==’*’)f++;
fun(s , f,t);
printf("The string after deleted:\n");puts(s);
NONO();
}
void NONO()
{/* 本函数用于打开文件,输入数据,调用函数,输出数据,关闭文件。 */
FILE *in, *out ;
int i ; char s[81], *t, *f ;
in = fopen("in.dat","r");
out = fopen("out.dat","w");
for(i = 0 ; i < 10 ; i++) {
fscanf(in, "%s", s);
t=f=s;
while(*t)t++;
t--;
while(*t==’*’)t--;
while(*f==’*’)f++;
fun(s, f, t);
fprintf(out, "%s\n", s) ;
}
fclose(in);
fclose(out);
}
选项
答案
{ int j=0; char *q=a; while(*q&&q
解析
(1)首先,设置一个指针变量q指向字符串的头位置,并使用循环,将从字符串头开始到第一个字母的“*”拷贝到字符串a。
(2)然后对第一个字母到最后一个字母之间的字符进行循环判断是否为“*”,如果是则跳过,否则拷贝到字符串a。
(3)最后,将最后一个字母到串尾的“*”拷贝到a,然后在新生成的字符串尾加’\0’。
转载请注明原文地址:https://kaotiyun.com/show/uJJp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
有以下程序: #include <strino.h> struct STU {int num; float TotalScore; }; void f(struct STU p) {struct STU
有以下程序: void sort(int a[],int n) { int i,j,t; for(i=0;i<n;i++) for(j=i+1;<n;j++) if(a[i]<a[j]){ t=a[
设有定义int k=1,m=2;float f=7;,则以下选项中错误的表达式是 ______。
以下程序的功能是:给r输入数据后计算半径为r的圆面积s,程序在编译时出错。 main() /* Beginning */ {int r;float s; scanf("%d",&r); s=*I*r*r; printf(
下列数据结构中,能用二分法进行查找的是 ______。
当运行以下程序时,输入abcd,程序的输出结果是:[]。insert(charstr[]){inti;i=strlen(str);while(i>0)
以下数组定义中错误的是______。
以下程序中,函数fun的功能是计算x2(上标)-2x+6,主函数中将调用fun函数计算:y1=(x+8)2(上标)-2(x+8)+6y2=sin2(上标)(x)-2sin(x)+6请填空。
若变量已删除正确定义,则以下语句的输出结果是______。 s=32; s^=32; printf("%d",s);
随机试题
心电图()。
正常情况下胸部MRI不能显示的结构是
自动冲洗机药液温度监测的叙述,错误的是
某二级耐火等级的多层综合楼,一层为商店,二层为餐厅,三层为影院,四层为宾馆。二层最大使用人数为240人。三、四层每层最大使用人数均为200人。该建筑设有三部疏散楼梯,其中一部为电影院独立使用的室外疏散楼梯,下列防火检查结果中不符合现行国家标准要求的是(
上海证券交易所B股佣金的最低标准是( )。
我国的证券公司按照所能从事的业务,可以分为()
中国戏曲最早可以追溯到《史记》所记载的先秦优孟扮演楚国已故宰相孙淑敌的故事。()
有关城市学校论述错误的是()。
Appeal-focusedtexts
Childrenwhogriptheirpenstooclosetothewritingpointarelikelytobeatadisadvantageinexaminations,【C1】______tothe
最新回复
(
0
)