首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请编写函数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
38
问题
请编写函数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全国计算机二级
相关试题推荐
有以下程序:#include<stdio.h>#include<stdlib.h>voidfun(int**s,intx[2][3]){**s=*(x[1]+1);}voidmain()inta[2][3]={1,2,3,4,5
有以下程序#include<stdio.h>yoidmain(){ints;scanf(’’%d’’,&s);while(s>0){switch(s){case1:printf(’’%d’’,s+5);case2:printf
有以下程序#include#includevoidfun(int*p1,int*p2,int*s){s=(int*)calloc(1,sizeof(int));*s=*p1+*p2;free(s);}main(){inta[2]=
若要实现total=1+2+3+4+5求和,以下程序段错误的是()。
有以下程序#include<stdio.h>intfun(){staticintx=1;x*=2;returnx;}main(){inti,s=1;for(i=1;i<:3;i++)s*=fun();printf("%d\n",s
下列属于C语言合法的字符常数是()。
设循环队列的存储空间为Q(1:35),初始状态为front=rear=35。现经过一系列入队与退队运算后,front=15,rear=15,则循环队列中的元素个数为
设二叉树共有500个结点,其中叶子结点有250个。则度为2的结点个数是
没数据元素的集合D={1,2,3,4,5},则满足下列关系R的数据结构中为线性结构的是()。
支持子程序调用的数据结构是()。
随机试题
电源下降外特性
利用层次分析法,确定C1、C2、C3三个指标的权重。某专家对三项指标的比较结果如题36表所示。试确定C1、C2、C3的权数(最终结果保留两位小数)。
A.脾破裂B.肝破裂C.胰腺破裂D.十二指肠损伤E.结肠损伤左膈升高、胃受压右移见于
按照我国《合同法》第33条的规定,当事人采用信件、数据电文等形式订立合同的,若合同要成立,对确认书的要求是()。
属于钢材工艺性能的是()
横向土石围堰与混凝土纵向围堰的接头处理措施通常采用措施包括()。
旅游安全事故可分为()。
小贾与你做同一项工作,完成工作后,小贾受到嘉奖,而真实的情况是小贾没干什么活,都是你干的活,你如何能揭发他?有几种方法?追问:你觉得你的揭发是不是影响了团结?
2007年12月31日,甲被入打伤,但直至2008年4月30日,甲才得知凶手是乙。2008年12月5日至2008年12月14日,甲因所在地发生地震,无法与外界联系。甲向人民法院起诉不丧失胜诉权的最后日期是()。(2010年单选42)
Forhigh-riskpropositionsyieldinghighreturns,thereisnothingtobeatthehandfulcompaniesmarketingeternallife.(31)th
最新回复
(
0
)