首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC++2010打开考生文件夹下modi1中的解决方案。此解决方案的项目中包含一个源程序文件modi1.c。函数fun将字符串s1和s2交叉合并形成新字符串s3,合并方法为:先取s1的第1个字符存入s3,再取s2的第1个字符存入s3,以后依次类推;若s
使用VC++2010打开考生文件夹下modi1中的解决方案。此解决方案的项目中包含一个源程序文件modi1.c。函数fun将字符串s1和s2交叉合并形成新字符串s3,合并方法为:先取s1的第1个字符存入s3,再取s2的第1个字符存入s3,以后依次类推;若s
admin
2018-03-27
23
问题
使用VC++2010打开考生文件夹下modi1中的解决方案。此解决方案的项目中包含一个源程序文件modi1.c。函数fun将字符串s1和s2交叉合并形成新字符串s3,合并方法为:先取s1的第1个字符存入s3,再取s2的第1个字符存入s3,以后依次类推;若s1和s2的长度不等时,较长字符串多出的字符顺序放在新生成的s3后。
例如,当s1为:’’123456789’’,s2为:’’abcdefghijk’’时,
输出结果应该是:1a2b3c4d5e6f7g8h9ijk
请改正函数fun中指定部位的错误,使它能得出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。
#include<stdio.h>
#include<string.h>
#ragma warning(disable:4996)
void fun(char*s1,char*s2,char*s3)
{int i,j;
/**********found**********/
for(i=0,j=0;(s1
!=’\0’)&&(s2
!=’\0’);i++,j=j+1)
{s3[j]=s1
;
s3[j+1]=s2
;
}
if(s2
!=’\0’)
{for(;s2
!=’\0’;i++,j++)
/**********found**********/
s3
=s2[j];
}
else if(s1
!=’\0’)
{for(;s1
!=’\0’;i++,j++)
s3[j]=s1
;
}
/**********found**********/
s3[j-1]=’\0’;
}
void main()
{char s1[128],s2[128],s3[255];
printf(’’Please input string1:’’);
gets(s1);
printf(’’Please input string2:’’);
gets(s2);
fun(s1,s2,s3);
printf(’’string:%s\n’’,s3);
}
选项
答案
(1)将for循环中的j=j+1改为j=j+2 (2)将s3[i]=s2[j]改为s3[j]=s2[i] (3)将s3[j-1]改为s3[j]
解析
(1)函数fun中,在两个字符串都未结束的情况下将sl[0]放入s3[0],将S2[0]放入s3[1],for循环将字符依次放入,即将s1
放入s3[j],s2
放入s3[j+1]中,每次循环数组s3中放入2个字符,所以循环变量j的变化为j=j+2;所以将for循环中的j=j+1改为j=j+2。
(2)当第一个循环结束后,数组s1或数组s2中仍然可能有字符没有存放至s3,根据题目要求,应该将其剩下的字符放入数组s3的尾部。使用for循环把s2放入s3,这里数组s3的下标应为j,所以应将s3
=s2[j]改为s3[j]=s2
。
(3)当s1[]或s2[]的最后一个字符放入s3[j]时,应该设置一个结束标志,该结束标志’\0’应存入s3[j]最后一个位置。因为将最后一个字符放入s3[j]中后,j执行j++,将结束标志’\0’放入此时的s3[j]中,所以将s3[j-1]改为s3[j]。
转载请注明原文地址:https://kaotiyun.com/show/6qID777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
2017年中央一号文件指出,以推进农业供给侧结构性改革为主线,围绕(),加强科技创新引领,加快结构调整步伐,加大农村改革力度,提高农业综合效益和竞争力。
根据下列材料回答问题。2011年年龄不超过24岁的入境旅游人数累计占总入境旅游人数的()。
20世纪以来,人类对弦的认识,发生了质的变革。弦就是振动,振动就会产生波,说明波构成了丰富多彩的大千世界。这为重新认识“美”提供了思想基础和技术方法。研究表明,自然美与物质的波长(或者频率)存在着深刻的内在联系,物体固有的频率与人自身的频率存在耦合关系,“
下列教育家与其代表作或思想对应不正确的是()。
认为“教育的根本功能不是提高人的生产能力,而是造成人的不同品质,与现存的社会经济结构和等级秩序相适应”的教育经济学理论是()
对外投资收入应列入国际收支平衡表的资本项目中。()
按照法的原则的位阶和具体程序不同,可将法的原则分为()。
设函数y=y(χ)在(0,+∞)上满足△y=(+χsinχ)△χ+o(△χ),且,则y(χ)=_______.
设函数f(x)在点x=1的某邻域内有定义,且满足3x≤f(x)≤x2+x+1,则曲线y=f(x)在点x=1处的切线方程为________.
设f(x)在x=0的某邻域内有定义,且满足
随机试题
A.高钾血症B.低钾血症C.代谢性酸中毒D.低钙血症E.水中毒急性肾功能衰竭造成死亡的常见原因
A.3~4个月B.6个月C.1~3个月D.7~10天E.4~6个月放射性131I治疗甲亢,症状明显缓解或治愈在治疗的
足月儿,产钳子助产娩出,出生时全身皮肤苍白,呼吸微弱,心率30次/分,肌张力松弛。生后首先应采取的措施是
男,40岁,肺结核患者,肺内有空洞性病变。最符合的X线表现是()
根据《证券法》关于上市公司及时向社会披露信息的规定,下列哪些表述是正确的?()
理财规划师在考虑风险和收益时,应当()
《2011年地方政府自行发债试点办法》规定,债券的期限结构为3年债券发行额和5年债券发行额分别占发债规模的()。
Oneevening,whileMarcosUgartewasdoinghishomeworkandhisfather,Eduardo,preparedlessonplans,theyheardsomeoneyelli
【21】【37】
(1)TheAmericaneconomyisinabefuddlingstate.Firmsareonasix-yearhiringspreethatshowslittlesignofabating;payro
最新回复
(
0
)