首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请编写函数fun,该函数的功能是:删除一维数组中所有相同的数,使之只剩一个。数组中的数已按由小到大的顺序排列,函数返回删除后数组中数据的个数。 例如,若一维数组中的数据是: 2 2 2 3 4 4 5 6 6 6 6 7 7 8 9 9 1
请编写函数fun,该函数的功能是:删除一维数组中所有相同的数,使之只剩一个。数组中的数已按由小到大的顺序排列,函数返回删除后数组中数据的个数。 例如,若一维数组中的数据是: 2 2 2 3 4 4 5 6 6 6 6 7 7 8 9 9 1
admin
2021-02-25
73
问题
请编写函数fun,该函数的功能是:删除一维数组中所有相同的数,使之只剩一个。数组中的数已按由小到大的顺序排列,函数返回删除后数组中数据的个数。
例如,若一维数组中的数据是:
2 2 2 3 4 4 5 6 6 6 6 7 7 8 9 9 10 10 10
删除后,数组中的内容应该是:
2 3 4 5 6 7 8 9 10
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
试题程序:
1 #iticlude<stdio.h>
2 #define N 80
3 int fun(int a[],int n)
4 {
5
6 }
7 void main()
8 {
9 int a[N]={2,2,2,3,4,4,5,6,6,6,6,7,7,8,9,9,10,10,10,10},i,n=20;
10 printf("The original data:\n’’);
11 for(i=0 ; i
12 printf(’’%3 d’’,a
);
13 n=fun(a,n);
14 printf (’’\n\nThe data after deleted:\n’’);
15 for(i=0;i
16 printf(’’%3 d’’,a
);
17 printf(’’\n\n’’);
18 }
选项
答案
1 int fun(int a[],int n) 2 { 3 int i,j=1; 4 for(i=1 ; i
解析
该程序的流程是:定义变量i和j,其中j用于控制删除后剩下的数在数组中的下标,i用于搜索原数组中的元素。j始终是新数组中最后一个元素的下一个元素的下标,所以if语句中的条件是a[j-1]!-a[j],其中a[j-1]就是新数组中的最后一一个元素,若条件成立,则表示出现了不同的值,所以a
要保留到新数组中。注意本题中i和j的初值都要从1开始,该算法只能用于数组已排序的题目中。
转载请注明原文地址:https://kaotiyun.com/show/IGtp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
下列叙述中正确的是
下列叙述中正确的是
在长度为64的有序线性表中进行顺序查找,最坏情况下需要比较的次数为
设已有定义:floatx;则以下对指针变量p进行定义且赋初值的语句中正确的是()。
在数据库的三级模式中,外模式(用户模式或子模式)有()。
若有以下程序#includemain(){intc;c=10^5;printf("%d\n",c);}则程序的输出结果是
对下列二叉树进行前序遍历的结果是
下面不属于软件需求规格说明书内容的是
T列数据结构中,不能采用顺序存储结构的是
下列二叉树描述中,正确的是()。
随机试题
下列关于肝外胆管结石的说法,不正确的是
在外科病因辨证中,漫肿宣浮,或游走不定,微热不红,疼痛轻微的,属于
称为“元神之府”的是
田律师作为被告人陈某的辩护律师出庭辩护。在庭审过程中,田律师发现陈某隐瞒了本案的重要事实。依照《律师法》的规定,田律师应该怎么办?()
根据我国法律规定,下列合同转让行为无效的是()。
为了进一步提高上市公司的质量,中国证监会长期以来要求在股票发行工作中实行改制与发行上市同时进行的要求。()
根据《刑事诉讼法》,关于刑事强制措施的说法,正确的是()。
在控制测试中,注册会计师如认为抽样结果无法达到其对所测试的内部控制的预期信赖程度时,应当考虑采取的措施包括()。
(I)求不定积分
TheonlycrimeIhaveeverbeen【B1】______withwasunsuccessful,butcrimeisa【B2】______probleminBritain.Onesortofcrimewh
最新回复
(
0
)