首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
给定程序modil.c中函数fun()的功能是将两个长度相等的纯数字字符串当作两个加数,求其代表的数值之和,并以字符串的形式存入r所指内存且返回。 例如s1"723",s2是"567",则返回的字符串为"1290"。要考虑进位。 请改正程序
给定程序modil.c中函数fun()的功能是将两个长度相等的纯数字字符串当作两个加数,求其代表的数值之和,并以字符串的形式存入r所指内存且返回。 例如s1"723",s2是"567",则返回的字符串为"1290"。要考虑进位。 请改正程序
admin
2023-02-27
75
问题
给定程序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://jikaoti.com/ti/6noiFFFM
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
某校高一、高二、高三三个年级的学生人数比为7:8:10,若全校共有学生2500人,则高一有()人。
从集合{P,Q,R,S}与{0,1,2,3,4,5,6,7,8,9}中各任选2个元素排成一排(字母和数字均不能重复),其中字母Q和数字0至多只能出现一个的不同排法有()。
一种商品,按照期望50%的利润来定价,结果只销售掉70%的商品,为尽早销售掉剩下的商品,商店决定按定价打折销售,这样获得的全部利润是原来期望利润的82%,则打了()折。
将2个红球(球互不相同)与1个白球随机地放入甲、乙、丙三个盒子中,则乙盒中至少有1个红球的概率为()。
从存放号码分别为1,2,…,10的卡片的盒子中,有放回地取100次。每次取一张卡片并记下号码,统计结果如下:则取到的号码为奇数的频率是()。
大革命失败后,在纠正陈独秀右倾机会主义错误的同时,党内开始滋长一种“左”的急躁情绪。从1927年7月大革命失败到1935年1月遵义会议召开之前,“左”倾错误先后三次在党中央的领导机关取得了统治地位,尤其是以王明为代表的“左”倾教条主义错误,使中国革命受到严
毛泽东曾指出,殖民地半殖民地国家的革命,在一定历史时期中所采取的国家形式,既不是资产阶级专政的共和国,也不是无产阶级专政的共和国,而“只能是第三种形式,这就是所谓新民主主义共和国”,它是“过渡的形式”,但却“是不可移易的必要的形式”。新民主主义共和国的“过
邓小平理论使改革开放后的中国发生了天翻地覆的变化,迎来了思想的解放、经济的发展、政治的昌明、教育的勃兴、文艺的繁荣、科学的春天。邓小平理论形成的历史根据是()
贫困是人类社会的顽疾。反贫困始终是古今中外治国安邦的一件大事。一部中国史,就是一部中华民族同贫困作斗争的历史。2021年2月25日,习近平在全国脱贫攻坚总结表彰大会上的讲话中指出,我国构建了一整套行之有效的政策体系、工作体系、制度体系,走出了一条中国特色减
随机试题
治疗虚火灼肺型肺痨应首选
如何加注制冷剂?
容积式液压泵输油量的大小与油液的压力有关。()
在特种变压器中,可用于作工频、冲击和直流高压试验的变压器为( )。
按照我国《刑法》的规定,紧急避险不负刑事责任。但其构成条件有明确的规定.关于紧急避险的构成条件,下列表述不正确的是()。
人民法院赔偿委员会对疑难、复杂、重大案件作出决定时,经过()批准,可以延长三个月。
著名的包豪斯设计学院发源于()。
设随机变量X,Y不相关,且E(X)=2,E(Y)=1,D(X)=3,则E[X(X+Y—2)]=()
Theprocessoftransformingalldirectexperienceintoimaginaryorintothatsuprememodeofsymbolicexpression,language,has
Thegrainoutputofthisyearismuchhigherthan_____oflastyear.
最新回复
(
0
)