首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用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
26
问题
使用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。
2首先声明为private的“private:intj;”中j为私有成员。然后在类中没有指定,系统默认为私有。即“inti:”中的i也是私有成员。所以本题中的私有成员数量为2。
false此题考查的是逻辑常量。在c十+语言中只有两个逻辑常量:true和false。故本题应填入false。
A、 B、 C、 D、 C此题考查的是函数模板。声明一个函数模板的格式是:template函数声明,{函数体}其中的是由一个或多个“模板形参”组成的,每个“模板形参”可具有以下几种形式:t
A、 B、 C、 D、 C派生类的构造函数定义的一般格式为:派生类名(参数总表):基类名(参数表){派生类新增数据成员的初始化语句}在生成对象b时,就自动给基类构造函数传递实参1
A、 B、 C、 D、 B构造函数A中的形参a对静态成员a形成了屏蔽,故只有在成员函数init()中才将静态成员a的值修改为1,而在其他成员函数中没发生变换,故obj.a=1。
A、 B、 C、 D、 D线性表的顺序存储是用一片连续的空间来存放数据元素,其特点是逻辑上相邻的元素在物理位置上也相邻。数据元素之间逻辑上的先后关系自动隐含在物理位置的相邻元素之中,因此不需要另外开辟空间来保
虚函数支持多态调用,一个基类的指针可以指向派生类的对象,而且通过这样的指针调用虚函数时,被调用的是指针所指的实际对象的虚函数,而非虚函数不支持多态调用。有如下程序:#include<iostream>usingnamespaees
数据库管理员(DBA)是数据库系统的一个重要组成部分,有很多职责。以下选项不属于DBA职责的是()。
以下哪个不是C++语言中的有效标识符?
随机试题
劳动安全卫生的立法最早产生于()
激活胃蛋白酶原的是
阴阳双方存在着相互排斥、相互斗争、相互制约的关系为()
以下可以治疗高血压的是
世界银行的贷款方式主要包括()。
公共建筑对外围护结构进行节能改造时,应复核、验算原结构的()。
右图①②③表示人体细胞间信息传递的三种主要方式。下列描述错误的是()。
普通树叶的宽与长之比,蝴蝶身长与双翅展开后的长度之比都接近0.618。人的肚脐是黄金分割的黄金点,肚脐上下的比值是0.618;人的膝盖至脚后跟与膝盖至肚脐之比为0.618;咽喉至头顶与咽喉至肚脐之比恰好也是0.618。人在精神愉快时脑电波频率下限是8赫兹,
基层人民法院和它派出的法庭,审理事实清楚、权利义务关系明确、争议不大的简单的民事案件,标的额为各省、自治区、直辖市上年度就业人员年平均工资30%以下的,实行()。
关于EDI说法正确的是
最新回复
(
0
)