首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
给定程序modil.c中函数fun()的功能是将两个长度相等的纯数字字符串当作两个加数,求其代表的数值之和,并以字符串的形式存入r所指内存且返回。 例如s1"723",s2是"567",则返回的字符串为"1290"。要考虑进位。 请改正程序
给定程序modil.c中函数fun()的功能是将两个长度相等的纯数字字符串当作两个加数,求其代表的数值之和,并以字符串的形式存入r所指内存且返回。 例如s1"723",s2是"567",则返回的字符串为"1290"。要考虑进位。 请改正程序
admin
2023-02-27
109
问题
给定程序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全国计算机二级
相关试题推荐
甲、乙两位长跑爱好者沿着社区花园环路慢跑,如两人同时、同向,从同一点A出发,且甲跑9米的时间乙只能跑7米,则当甲恰好在A点第二次追上乙时,乙共沿花园环路跑了()圈。
某校高一、高二、高三三个年级的学生人数比为7:8:10,若全校共有学生2500人,则高一有()人。
6人站成一排照相,其中甲,乙,丙三人要站在一起,且要求乙,丙分别站在甲的两边,则不同的排法种数有()。
正方形ABCD的边长为a,以AB、BC、CD、DA分别为直径画半圆,这四个半圆弧所围成的阴影部分的面积为()。
一出租车司机从饭店到火车站途中有六个交通岗,假设司机在各交通岗遇到红灯这一事件是相互独立的,并且概率都是,那么这位司机遇到红灯前,已经通过了两个交通岗的概率是()。
由0,1,2,3,4组成的没有重复数字的全部五位数中,若按从小到大的顺序排列,则数字12340应是第()个数。
从集合{O,P,Q,R,S}与{0,1,2,3,4,5,6,7,8,9}中各任选2个元素排成一排(字母和数字均不能重复),其中字母O,Q和数字0至多只能出现一个的不同排法有()。
从19世纪70年代开始,自由竞争资本主义逐步向垄断资本主义过渡。在资本主义生产发展和生产规模不断扩大的过程中,伴随着生产和资本的不断集中。其中,资本集中是指大资本吞并小资本,或由许多小资本合并而成大资本的过程,其结果是()
实现中华民族伟大复兴是中华民族近代以来最伟大的梦想。习近平总书记在党的十九大报告中指出,中华民族伟大复兴,绝不是轻轻松松、敲锣打鼓就能实现的,全党必须准备付出更为艰巨、更为艰苦的努力。实现伟大梦想,必须()
求下列极限(其中n皆为正整数):
随机试题
设f(x)在[0,1]上连续且满足f(0)=1,f’(x)-f(x)=a(x-1),y=f(x),x=0,x=1,y=0围成的平面区域绕x轴旋转一周所得的旋转体体积最小,求f(x).
“逢山开路,遇水搭桥”。这句话强调的是()
下列不属于肿瘤易感性遗传的疾病是
下列哪项检查结果提示可能是慢性肝炎与肝硬化()
某梁跨度为7.5m,规范要求混凝土强度达到设计抗压强度的()以上时,可对其底模及支架进行拆除。
天馈线金属护套应在顶端及进入机房入口处的()作保护接地。
高盛企业计划从国外引进生产一新项目,该项目分两期进行:预计第一期新项目产品在2007年年初投资,市场适销期为4年,新产品的生产可利用原有旧设备,该设备的原值220万元,税法规定的使用年限为6年,已使用1年,按年数总和法计提折旧,税法规定的残值为10万元。目
人权是一个国家主权范围的问题,我们不承认所谓国际社会关于人权的普遍性原则。()
人在生活中会交到各式各样的朋友,请你说一下令你最敬佩的一个朋友。
"HehasbeentoParis"entails
最新回复
(
0
)