首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
下列给定的程序中,函数fun()的功能是;将s所指字符串中出现的n所指字符串全部替换成t2所指字符串,所形成的新的字符串放在w所指的数组中。在此处,要求t1和t2所指字符串的长度相同。例如:当s所指字符串中所指的内容为 abcdabfab,t1所指字符串中
下列给定的程序中,函数fun()的功能是;将s所指字符串中出现的n所指字符串全部替换成t2所指字符串,所形成的新的字符串放在w所指的数组中。在此处,要求t1和t2所指字符串的长度相同。例如:当s所指字符串中所指的内容为 abcdabfab,t1所指字符串中
admin
2010-05-05
54
问题
下列给定的程序中,函数fun()的功能是;将s所指字符串中出现的n所指字符串全部替换成t2所指字符串,所形成的新的字符串放在w所指的数组中。在此处,要求t1和t2所指字符串的长度相同。例如:当s所指字符串中所指的内容为 abcdabfab,t1所指字符串中的内容为ab,t2所指字符串中的内容为99时,结果在w所指的数组中的内容应为99cd99f99。
请改正程序中的错误,使它能得出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。
试题程序:
#include <conio.h>
#include <stdio.h>
#include <string.h>
/*************found**************/
int fun (char *s, char *t1, char *t2, char *w)
{
int i; char *p,*r,*a;
strcpy(w,s);
while (*w)
{p=w; r=t1;
/*************found**************/
while (r)
if (*r= =*p) {r++;p++;}
else break;
if (*r= =’\0’)
{a=w; r=t2;
/*************found**************/
while (*r){*a=*r;a++;r++}
w+=strlen(t2);
}
else w++;
}
}
main()
{char s[100],t1[100],t2[100],w[100];
clrscr();
printf("\nPlease enter string S: ");
scanf("%s",s);
printf("\nPleaseentersubstring t1: ");
scanf ("%s", t1);
printf("\nPlease enter substring t2: ");
scanf ("%s",t2);
if (strlen(t1)= =strlen(t2))
{
fun (s,t1,t2,w);
printf("\nThe result is : %s\n",w);
}
else printf("Error : strlen(t2)\n");
}
选项
答案
(1)错误:int fun(char *s,char *t1,char *t2, char *w) 正确:void fun(char *s,char *t1,char *t2, char *w) (2) 错误:while(r) 正确:while(*r) (3) 错误:r++ 正确:r++;
解析
在int fun(char *s,char *t1,char *t2, char *w)中,用int型定义指针数组。ANSI标准要求动态分配系统返回void指针。 void指针具有一般性,它们可以指向任何类型的数据。但目前绝大多数C编译所提供的这类函数都返回char指针。无论以上两种情况的哪一种,都需要强制类型转换的方法把char指针转换成所需的类型。该程序段应该是void fun(char *s,char *t1, char *t2, char *w),另外,while(r)和r++都是简单的逻辑和语法错误,只要加强了C语言的基础,这样的错误明显是“送分”的。
转载请注明原文地址:https://kaotiyun.com/show/zXID777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
在西柏坡时期,党中央:①领导了解放区的土改运动;②召开了党的七届二中全会;③组织指挥了辽沈、淮海、平津三大战役。上述历史事件出现的先后顺序是()。
中国探月计划迅速发展,下列对中国航天领域描述错误的是()。
下列关于我国科技领域取得的一些新成就,表述错误的是()。
下列人物与研究成果对应错误的一项是()。
在秋冬时节,我国大部分地区常会出现大雾,阻碍水、陆、空交通的正常运行,引发交通事故,危害人体健康。下列关于雾的说法正确的是()。
公开审判是指法院对案件的审理过程和判决结果向群众、向社会公开的制度,包括公开审理和公开宣判。下列关于公开审判制度的表述,哪一项是正确的?()
我国境内的几处晚期猿人按时间顺序由远及近排列正确的是()。
下列不属于我国民族政策内容的是()。
张某11周岁,小学五年级学生.经常在其学校门口的一家小卖部买零食和一些学习用品,部分赊账,年终时共欠小卖部340元。小卖部老板拿着账单要求张某父亲付款,遭到张某父亲拒绝。下列说法正确的是()。
六年级五个班的同学共植树100棵。已知每个班植树的棵数都不相同,且按数量从多到少的排名恰好是一、二、三、四、五班。又知一班植的棵数是二、三班植的棵数之和,二班植的棵数是四、五班植的棵数之和,那么三班最多植树多少棵?
随机试题
组成药物中含有人参、甘草、大枣的方剂是()(2000年第144题)
事业部制结构最早起源于美国的通用汽车公司。这种组织结构形式使通用汽车公司的整顿和发展获得了很大的成功。请简述事业部制的优缺点。
关于垂体瘤X线平片检查,下列叙述哪项正确
关于NK细胞的叙述,错误的是
合同的解除应具体遵循的程序是( )。
某水闸工程施工招标投标及合同管理过程中,发生如下事件:事件1:该工程可行性研究报告批准后立即进行施工招标。事件2:施工单位的投标文件所载工期超过招标文件规定的工期,评标委员会向其发出了要求澄清的通知,施工单位按时递交了答复,修改了工期计
()的股东清求时,应当在两个月内召开临时股东大会。
企业改组为上市公司时,处理承担社会职能的非经营性资产时应当坚持( )原则。
Ifyoufeellikewithdrawingfromthehurlyburlyandbeingreclusive,thendosoandtakethisopportunitytorechargeyourbat
ThemangetsupataquartertosevenwhenheisinGombe.
最新回复
(
0
)