首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请编写函数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
34
问题
请编写函数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全国计算机二级
相关试题推荐
下列叙述中正确的是
下面属于黑盒测试方法的是()。
在数据库的三级模式中,外模式(用户模式或子模式)有()。
下列叙述中错误的是()。
有两个关系R和T如下图所示:则由关系R得到关系T的运算是
对如下二叉树进行后序遍历的结果为
我们所写的每条C语句,经过编译最终都将转换成二进制的机器指令。关于转换以下说法错误的是
某完全二叉树按层次输出(同一层从左到右)的序列为ABCDEFGH。该完全二叉树的前序序列为()。
某二叉树中有n个叶子结点,则该二叉树中度为2的结点数为
随机试题
嗜铬细胞瘤的临床表现包括
对烧伤早期休克患者的一般监测项目包括()
某市房地产开发企业为增值税一般纳税人,向香港某公司租用其在该市购入的办公用房,用于现行开发的三个项目进行经营管理。合同约定租期三年,年租金115.5万元,三年租金合计346.5万元。于2018年8月18日一次付清,已知该房地产开发企业2018年正在开发的项
根据题目要求完成下列任务。用中文作答。(1)什么是形成性评价?为什么在英语教学过程中应以形成性评价为主?(2)简述形成性评价的方式。
某富翁在全国赈灾义演会上,当众宣布向民政部门设立的救灾基金捐赠50万元。后来,该富翁迟迟未支付捐款。下列意见哪一项是正确的()
已知3阶矩阵A与3维列向量x,使x,Ax,A2x线性无关,且满足A3x=3Ax-2A2x,令P=(x,Ax,A2x).求3阶矩阵B,使A=PBP-1;
Despitethetemptationforparentstosayyestotheirchildren’swishes,researchshowsthere’saninsidioussidetochasing
李某在《电脑与编程》杂志上看到张某发表的一组程序,颇为欣赏,就复印了一百份作为程序设计辅导材料发给了学生。李某又将这组程序逐段加以评析,写成评论文章后投到《电脑编程技巧》杂志上发表。李某的行为(10)。
以下程序intf(intn){if(n==1)return1;elsereturnf(n-1)+1;}main(){inti,j=0;for(i=1;i<3;i++)j+=f
Thedaywasbreakingandpeoplebegantogotoworksothemurdererwasunableto_____ofthebody.
最新回复
(
0
)