首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码,完成空出部分程序。函数fun(int*arr,int n)的功能是将指定的有序数组压缩成各元素互不相同的有序数组,即相同数只保留一个,多余的被删除。并返回互不相同的元素的个数
使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码,完成空出部分程序。函数fun(int*arr,int n)的功能是将指定的有序数组压缩成各元素互不相同的有序数组,即相同数只保留一个,多余的被删除。并返回互不相同的元素的个数
admin
2018-10-23
33
问题
使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码,完成空出部分程序。函数fun(int*arr,int n)的功能是将指定的有序数组压缩成各元素互不相同的有序数组,即相同数只保留一个,多余的被删除。并返回互不相同的元素的个数。
注意:不能修改程序的其他部分,只能修改fun()函数。
2 #include<iostream>
2 int fun(int *a,int n)
3 {
4
5 }
6 void main()
7 {
8 int A[]={6,6,5,4,4,3,3,2,1};
9 int j =fun(A,sizeof(A)/sizeof(int));
10 for(int i=0;i<j;i++)
11 {
12 std::cout<<A
<<’ ’;
13 }
14 std::cout<<std::end1;
15 return;
16 }
选项
答案
1 int j; 2 int k=0;//指向数组第一个元素 3 j=1; //指向数组第二个元素 4 while(j<n)//将本次循环k指向的元素依次与其他元素比较,如果不同,则存入数组 5 { 6 if(a[j]!=a[k]) 7 { 8 a[++k]=a[j]; //k指向下一个元素 9 } 10 j++; 11 } 12 return k+1; //为新数组大小
解析
(1)该程序功能是将指定的有序数组压缩成各元素互不相同的有序数组,即相同数只保留一个,多余的被删除。它的解题思路,由第一个元素开始,利用循环将所有元素,依次与它后面的元素比较,如果不同存入数组。
(2)从已给部分源程序的main主函数开始入手,核心函数int fun(int *a,int n)中的参数a为输入的数组,n为数组大小。
(3)首先指向数组第一个元素a[k],然后将第二元素a
与它比较,不同存入数组第二个元素(a[++k])。
(4)同时,将被比较的位置向后移动一位(j++)。循环直到数组的最后一个元素比较完毕。
转载请注明原文地址:https://kaotiyun.com/show/S5Ap777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
执行完下列语句inta,b,c=&a;int*&p=c;p=&b;后c指向
以下程序的输出结果是inta,b;voidfun(){a=100;b=200;)main(){inta=5,b=7;fun();cout<<a<<b<<endl;}
以下关于友元函数的叙述不正确的是()。
以下函数值的类型是()。fun(floatx){floaty;y=3*x-4;returny;}
有以下程序:main(){inta=5,b=4,c=3,d=2;if(a>b>C)cout<<d<<end1;elseif((c-1)=d)==1)tout<<d+1<<endl;elsecou
下列定义中p指向的地址可更改,但*p不能够更改的是()。
函数swap(a,n)可完成对a数组从第1个元素到第n个元素两两交换。其中b[=1;b[1]=2;swap(b,2)。在运行调用函数中的语句后,b[0]和b[1]的值分别为()。
下列有关拷贝构造函数的描述中错误的是()。
在结构化设计方法中,数据流图表达了问题中的数据流与加工间的关系,并且每一个______实际上对应一个处理模块。
随机试题
下列选项中,属于服务商标的是()
判断膀胱破裂的简便方法是
下列项目中,属于会计估计变更的是()。
A公司为上市公司,拟进行破产重整。2015年10月,当地法院批准了公司的重整计划,对于普通债权按照12%的份额以现金清偿,随即A公司按法院裁定进行破产债务重整,截至2016年1月10日,A公司已经清偿了所有应以现金清偿的债务;截至2016年4月10日,应清
CIDR.使用“斜线记法”,它又称为CIDR记法,即在IP地址面加上一个斜线“/”,然后写上网络前缀所占的位数(这个数值对应于三级编址中子网掩码中1的个数)。()
排球比赛中后排队员完成拦网或参加了完成拦网的集体,即为()犯规。
用以传达要求下级机关办理和需要有关单位周知或者执行事项的公文是()。
下列选项中,表述正确的是()。
C
A、Itmadesome3DTVprograms.B、Itmademoreinterestingmovies.C、Itmadesome3Dmovies.D、Itsoldticketsatlowerprices.C
最新回复
(
0
)