首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码。函数MergeAndSort(int s[],int e[],int a[],int m,int n)实现将两个数组合并。这两个数组已经有序,按照由小到大的顺序排列。 例如:
使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码。函数MergeAndSort(int s[],int e[],int a[],int m,int n)实现将两个数组合并。这两个数组已经有序,按照由小到大的顺序排列。 例如:
admin
2019-05-29
54
问题
使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码。函数MergeAndSort(int s[],int e[],int a[],int m,int n)实现将两个数组合并。这两个数组已经有序,按照由小到大的顺序排列。
例如:
e[]={1,3,5,6},m是数组e的长度,即为4。
a[]={2,4,5,7,11,13},n是数组a的长度,即为6。
则执行的结果为:s[]={1,2,3,4,5,6,7,11,13}
补充函数fun(int s[],int e[],int a[],int m,int n),使之实现上述要求。
注意:请勿改动主函数。
#include<iostream.h>
void MergeAndSort(int s[],
int e[],int a[],int m,int n)
{
}
int main()
{
int data[20],i;
int a[]=(1,3,5,6);
int b[]={2,4,5,7,11,13};
cout<<"a[]=";
for(i=0;i<4;i++)
cout<<a
<<’,’;
cout<<endl;
cout<<"b[]=";
for(i=0;i<6;i++)
cout<<b
<<’,’;
cout<<endl;
MergeAndSort(data,a,b,4,6);
cout<<"s[]=";
for(i=0;i<9;i++)
cout<<data
<<’,’;
cout<<endl;
return0;
}
选项
答案
int i,j,k; i=0; j=0; k=0; while(i<m && j<n) { if(e[i]<a[j]) { S[k++]=e[i++];//取小的,因为从小到大排序 } else if(e[i]==a[j])//相等,取e[i]或a[j]都可 { s[i++]=e[i]; i++; j++; } else//e[i]>a[j],取小的a[j] { s[k++]=a[j++]; } } while(i<m)s[k++]=e[i++];//如果数组e后面还有没有加进来的元素,则加进去 while(j<n)s[k++]=a[j++];//如果数组a后面还有没有加进来的元素,则加进去
解析
(1)由审题分析可知,可设置循环来逐个读取e数组和a数组的元素值,然后选择小的元素放在数组s中,如果相等则取a数组元素或e数组元素均可,可以利用if else语句来进行判断。
(2)由于数组e和数组a长度可能不一定相同,因此在循环结束之后,还需要把长度长的数组的剩余的元素添加到s数字中,即循环结束后如果e数组内还有字符的话把e数组内剩下的字符添加到s数组内,同样如果a数组内还有字符的话把a数组内剩下的字符添加到S数组内。
转载请注明原文地址:https://kaotiyun.com/show/lB8p777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
A、 B、 C、 D、 B特别要注意“结点的度”和“树的度”是两个不同的概念。“结点的度”指的是此结点拥有的后件个数。“树的度”指的是所有结点中的最大的度。在二叉树中,结点中最大的度为2,所以二叉树的度为2。
A、 B、 C、 D、 B在面向对象程序设计中,允许作用于某个对象上的操作称为方法,方法是对象的动态属性。对象间的通信靠消息传递。对象是属性和方法的封装体,可以从祖先中继承属性和方法,但不是任何对象都具有继承
private此题考查的是类的继承方式。类的继承方式有公有、保护和私有三种。分析题目可以得到,若横线处填入的是private,即类Defivedt私有继承类Base将导致objD.m和obiDm出错,符合题目要求。
构造函数构造函数的主要作用是对数据成员初始化,系统为成员分配内存时,保留这些存储单元的原状。
A、 B、 C、 D、 BPoint&operator++(){x++;return*this;}是在成员函数运算符重载单目运算符(前缀方式),Pointoperator++(int){Poin
A、 B、 C、 D、 B构造函数A中的形参a对静态成员a形成了屏蔽,故只有在成员函数init()中才将静态成员a的值修改为1,而在其他成员函数中没发生变换,故obj.a=1。
A、 B、 C、 D、 D在C++中,数组的下标为0~Ⅳ-1,如果定义数组指针,则指针刚开始时是指向数组的头元素
A、 B、 C、 D、 C虚函数是在类的声明中使用virtual关键字来限定的成员函数,在成员函数实现时不能再使用virtual关键字进行限定。派生类中的虚函数必须和基类中的虚函数的形参个数、形参类型、返回值
A、 B、 C、 D、 C所谓的算法的时间复杂度,是指执行算法所需要的工作量,可以用算法在执行过程中所需基本运算的执行次数来度量算法的工作量。
下列程序的输出结果为:Ohjectid=0Objectid=1请将程序补充完整。#include<iostream>usingnamespaeestd;classPoint{
随机试题
张先著诉芜湖市人事局公务员招考行政录用决定案2003年6月,原告张先著在芜湖市人事局报名参加安徽省公务员考试,经过笔试和面试,综合成绩在报考该职位的三十名考生中名列第一。2003年9月17日,张先著在芜湖市-人事局指定的铜陵市人民医院的体检报告显示,其乙
设f(x,y)=e-xsin(2x+y),则
下列哪种原因导致重症肺炎患儿发生严重腹胀
A、0B、1C、2D、3E、4牙龈呈轻度炎症,有颜色改变,无肿胀或血肿,探诊后有点状出血,SBI记分为
患儿,女,9个月。因进食饺子过量发生腹泻,每天8~9次。体温37.8℃,前囟平坦,尿量正常,大便镜检见少量脂肪球,临床诊断为轻型腹泻。按医嘱给患儿服用ORS液不妥的是()
矩形渠道断面宽度4m,水深2m,流量8m3/s,渠底坡度为0.0001,其粗糙系数为()。
填写“出从境货物报检单”H.S编码栏时,仅填写该商品前四位即可。( )
下列属于货币政策工具的是()。①利率②汇率③收入④借贷
仔细阅读下面的漫画,并针对漫画中反映的现象发表一篇演讲。
Scientistsandcriticalthinkersalwaysuselogicalreasoning.【F1】Logicallowsustoreasoncorrectly,butitisacomplextopi
最新回复
(
0
)