首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
给定程序modil.c中函数fun()的功能是将两个长度相等的纯数字字符串当作两个加数,求其代表的数值之和,并以字符串的形式存入r所指内存且返回。 例如s1"723",s2是"567",则返回的字符串为"1290"。要考虑进位。 请改正程序
给定程序modil.c中函数fun()的功能是将两个长度相等的纯数字字符串当作两个加数,求其代表的数值之和,并以字符串的形式存入r所指内存且返回。 例如s1"723",s2是"567",则返回的字符串为"1290"。要考虑进位。 请改正程序
admin
2023-02-27
85
问题
给定程序modil.c中函数fun()的功能是将两个长度相等的纯数字字符串当作两个加数,求其代表的数值之和,并以字符串的形式存入r所指内存且返回。
例如s1"723",s2是"567",则返回的字符串为"1290"。要考虑进位。
请改正程序中的错误,使它能得出正确的结果。
注意:不要改动main()函数,不得增行或删行,也不得更改程序的结构!
1 #include
2 #include
3 char*fun(char*s1,char *s2,char * r)
4 {
5 int len,cy=0,md;
6 char*p,*q,*t;
7 len=strfen(s1);
8 p=s1+len-1;
9 q=s2+len-1;
10 t=r+len;
11 /*********found*********/
12 *t=’\0’;
13 while(p>=s1)
14 {
15 /*********found*********/
16 md=*p+*q-'0'+cy;
17 if(md>=10) cy=1;
18 else cy=0;
19 *t=md%10+'0';
20 p~-;
21 q~-;
22 t~-;
23 }
24 /*********found*********/
25 if(cy=1)
26 *t='1';
27 else
28 {
29 while(*r++=*++t);
30 }
31 return r;
32 }
33 void main()
34 {
35 char s1[100],s2[100],s3[101];
36 strcpy(s1,"65743");
37 strcpy(s2,"85339");
38 fun(s1,s2,s3);
39 printf("%s+%s=%s\n",s1,s2,s3);
40 }
选项
答案
(1)*(t+1)='\0';或者*(1+t)=’\0'; (2)md=*p-'0'+*q-'0'+cy; (3)if(cy==1)
解析
题干要求将两个长度相等的纯数字字符串当作两个加数,求其代表的数值之和并以字符串的形式存入r所指内存且返回。指针p指向字符串s1最后一个字符,指针q指向字符串s2最后一个字符。指针t指向r+len。
(1)指针变量r存放相加以后的字符串,相加后可能会发生进位,指针t后一位存放字符串结束标志。这里将将*=’\0’;修改为*(t+1)='\0';或者*(1+t)=’\0';。
(2)将指针变量p和q指向的数字字符相加,所以需要减去字符"0"。这里将md=*p+*q-'0'+cy;修改为md=*p-'0'+*q-’0'+cy;。
(3)如果cy为1,则加法运算发生进位,指针t的位置存放1。这里将if(cy=1)修改为if(cy==1)。
转载请注明原文地址:https://kaotiyun.com/show/QJ0D777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
在Rt△ABC中,∠C=90°,AC=BC=2,分别以A、B、C为圆心,以AC为半径画弧,三条弧与边AB所围成的阴影部分的面积是()。
半径分别为60米和40米的两条圆形跑道在点A相切,甲乙两人同时从点A出发,以相同的速度分别沿两个跑道行走,则第一次相遇时沿小圆轨道行走的人一共走了()圈。
奖金发给甲、乙、丙、丁四人,其中1/5发给甲,剩余的1/4发给乙,剩余的1/3发给丙,其余的发给丁,丁的奖金为200元,则这批奖金为()。
某商店花10000元进了一批商品,按期望获得25%的利润来定价,结果只销售了商品总量的30%,为尽快完成资金周转,商店决定打折销售,这样卖完全部商品后,亏本1000元,则商店是按定价打()折销售的。
将一颗骰子随机抛掷3次,则所得最大点数与最小点数之差等于2的概率为()。
函数y=f(x)的图像关于直线x=1对称,若方程f(x)=0有四个不等实根x1,x2,x3,x4,则x1+x2+x3+x4=()。
当时,两数f(x)=-x2+4x+k有最小值1,则此区间内函数f(x)的最大值为()。
已知盒中装有3只螺口与7只卡口灯泡,这些灯泡的外形与功率都相同且灯口向下放着,现需要一只卡口灯泡使用,电工师傅每次从中任取一只并不放回,则他直到第3次才取得卡口灯泡的概率为()。
将一颗骰子随机抛掷2次,则所得最大点数与最小点数之差等于2的概率为()。
大革命失败后,在纠正陈独秀右倾机会主义错误的同时,党内开始滋长一种“左”的急躁情绪。从1927年7月大革命失败到1935年1月遵义会议召开之前,“左”倾错误先后三次在党中央的领导机关取得了统治地位,尤其是以王明为代表的“左”倾教条主义错误,使中国革命受到严
随机试题
四环素是治疗____________的首选药。
A、马兜铃酸B、普萘洛尔C、利多卡因D、华法林E、地高辛蛋白结合率高()
下列选项中债权人不可以行使撤销权来保全自己债权的是()。
买人并持有策略、恒定混合策略、投资组合保险策略不同的特征主要表现在三个方面,其中不包括()。
下列关于房屋租赁合同的表述中,正确的有()。
江西省的四大世界遗产指的是()。
为响应国家号召,倡导工匠精神,我市要开展一次以“弘扬工匠精神,树立时代先锋”为主题的活动。假如你是市政府工作人员,领导让你负责此次活动,你将如何开展?
经过墨子及其弟子们的毕生努力,《墨经》终于脱稿成书。在那古奥的外表下,数学、力学、光学等科学知识_______其中,一些概念定义和科学发现与西方近代科学十分_______,闪耀着惊人的智慧之光。依次填入画横线部分最恰当的一项是()。
根据以下资料,回答下列题。2011年全国批准建设用地61.2万公顷,其中转为建设用地的农用地41.05万公顷,转为建设用地的耕地25.3万公顷,同比分别增长13.5%、14.8%、8.5%。2010年转为建设用地的农用地占批准建设用地的比重
Rememberbooks?Theywerethosepiecesofpaperwithwordsprintedonthem【C1】______inbetweentwo,sometimes,【C2】______covers.
最新回复
(
0
)