首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC++2010打开考生文件夹下modi1中的解决方案。此解决方案的项目中包含一个源程序文件modi1.c。在此程序中,函数fun的功能是:将s所指字符串中最后一次出现的与t1所指字符串相同的子串替换成t2所指字符串,所形成的新串放在w所指的数组中。要
使用VC++2010打开考生文件夹下modi1中的解决方案。此解决方案的项目中包含一个源程序文件modi1.c。在此程序中,函数fun的功能是:将s所指字符串中最后一次出现的与t1所指字符串相同的子串替换成t2所指字符串,所形成的新串放在w所指的数组中。要
admin
2018-08-11
26
问题
使用VC++2010打开考生文件夹下modi1中的解决方案。此解决方案的项目中包含一个源程序文件modi1.c。在此程序中,函数fun的功能是:将s所指字符串中最后一次出现的与t1所指字符串相同的子串替换成t2所指字符串,所形成的新串放在w所指的数组中。要求t1和t2所指字符串的长度相同。
例如,当s所指字符串中的内容为“abedabfabc”,t1所指串中的内容为“ab”,t2所指子串中的内容为“99”时,结果在w所指的数组中的内容应为“abcdabt99c”。
请改正程序中的错误,使它能得出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!
试题程序:
#include<conio.h>
#include<stdio.h>
#include<string.h>
void fun(char*s,char*t1,
char*t2,char*w)
{
char*p,*r,*a;
strcpy(w,s);
/*********found*********/
while(w)
{
p=w;
r=t1;
while(*r)
/*********found*********/
IF(*r==*p)
{
r++;
p++;
}
else
{
break;
}
if(*r==’\0’)
a=w;
w++;
}
r=t2;
while(*r)
{
*a=*r;
a++;
r++;
}
}
main()
{
char s[i00],t1[i00],t2[100],w[100];
printf("\nPlease enter string s:");
Scanf("%s",s);
printf("\nPleaseenter substring 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("\nError:
strlen(t1)!=strlen(t2)\n");
}
}
选项
答案
(1)while(*w) (2)if(*r==*p)
解析
(1)此处要判断的是值的真假,而不是地址,所以改为while(*w)。
(2)C语言中关键字区分大小写,只需运行程序,就可以根据错误提示找到。
转载请注明原文地址:https://kaotiyun.com/show/ujxp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
有以下程序:main(){inta=[10]{1,2,3,4,5,6,7,8,9,10},*p=&a[3],*q=p+2;printf("%d\n",*p+*q);}程序运行后的输出结果是_
在下列选项中,没有构成死循环的程序段是()。
有以下程序段charch;intk;ch=′a′;k=12;printf("%c,%d,",ch,ch,k);printf("k=%d\n",k);已知字符a的ASCII码值为97,则执行上述程序段后输出结果是
数据的存储结构是指()
设有下列的程序段:charstr[]="Hello";char*ptr;ptr=-str;执行上面的程序段后,*(ptr+5)的值为______。
若有程序片段: inta[12]={0},*p[3],**pp,i for(i=0;i<3;i++) p[i]=&a[i*4]; pp=p; 则对数组元素的错误引用是()
若调用一个函数,且此函数中没有return语句,则以下正确的说法是______。
以下定义的结构体类型拟包含两个成员,其中成员变量info用来存入整形数据;成员变量link是指向自身结构体的指针,请将定义补充完整。structnode{intinfo;【】link;};
字符串"\\\’abcd\123\xAB\t"的长度是()。
随机试题
下列哪种药物不能清除自由基
Itisbelieved________greatchangeswillbemadewiththeapplicationofthenewtechnology.
女性,32岁,口腔黏膜间断性反复发生溃烂4年,曾服用过维生素和抗生素治疗,但效果不明显,近一月来常熬夜,发作更为频繁。临床诊断最大可能为
患者,女性,21岁。一年来反复下肢紫癜。病前无服药史。脾肋下1cm,肝未及,血红蛋白100g/L,白细胞5.4×109/L,血小板25×109/L,骨髓增生活跃,可见31个巨核细胞,其中幼稚型6个,颗粒型25个,产板型未见,PAIgG增高。最可能的诊断是(
【背景资料】某一级公路的主要工序见表1。在施工中发生以下事件:事件一:由于施工单位设备故障,导致C工作中断4d。事件二:由于百年一遇的冰雪灾害,导致D工作晚开工15d。事件三:由于图纸晚到,导致E工作停
下列各项中,可行的项目是( )。
分析电力系统运行的暂态稳定性时,对于非周期分量电流和负序分量电流的处理原则是()。
生态补偿是在经济社会发展中对生态功能和质量所造成损害的一种补助,其目的是为了提高受损地区的环境质量或者用于创建新的具有相似生态功能和环境质量的区域。生态补偿在原则上适用谁破坏谁补偿。根据上述定义,下列属于生态补偿的是:
LookAfterYourVoiceOftenspeakersatameetingexperiencedrymouthsandaskforaglassofwater.Youcansolvetheprob
Iwenttotheconcertbutitwasnotsuchagoodperformance______youhadtoldmeabout.
最新回复
(
0
)