首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
给定程序中,函数fun的功能是:利用指针数组对形参ss所指字符串数组中的字符串按由长到短的顺序排序,并输出排序结果。ss所指字符串数组中共有N个字符串,且串长小于M。 请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
给定程序中,函数fun的功能是:利用指针数组对形参ss所指字符串数组中的字符串按由长到短的顺序排序,并输出排序结果。ss所指字符串数组中共有N个字符串,且串长小于M。 请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
admin
2019-03-06
78
问题
给定程序中,函数fun的功能是:利用指针数组对形参ss所指字符串数组中的字符串按由长到短的顺序排序,并输出排序结果。ss所指字符串数组中共有N个字符串,且串长小于M。
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANK1.C中。
不得增行或删行,也不得更改程序的结构!
1 #include <stdio.h>
2 #include<string.h>
3 #define N 5
4 #define M 8
5 void fun(char(*ss)[M])
6 { char *ps[N],*tp;int i,j,k;
7 for(i=0;i<N;i++)ps
=ss
;
8 for(i=0;i<N-1;i++){
9 /**********found**********/
10 k=__1___;
11 for(j=i+1;j<N;j++)
12 /**********found**********/
13 if(strlen(ps[k])<strlen(___2___))k=j;
14 /**********found**********/
15 tp=ps
;ps
=ps[k];ps[k]=___3____;
16 }
17 printf(’’\nThe string after sorting by length:\n\n’’);
18 for(i=0;i<N;i++)puts(ps
);
19 }
20 main()
21 {char ch[N][M]={’’red’’,’’green’’,"blue’’,¨yellow","black¨),
22 int i;
23 printf(’’\nThe original string\n\n’’);
24 for(i=0;i<N;i++)puts(ch
);printf(’’\n’’);
25 fun(ch) }
选项
答案
(1)i (2)ps[j] (3)tp
解析
本题中函数fun的功能是利用指针数组对形参ss所指字符串数组中的字符串按由长到短的顺序排序,并输出排序结果。在fun函数中采用了选择排序法,在选择排序法中的降序排序,首先从数组中挑选一个最大的元素,把它和第一元素交换,接着从剩下的n-1个元素中再挑出一个最大的元素,把它和第二个元素交换,不断重复以上过程,直到比较完最后两个元素。
第一空:分析可知,fun函数采用的选择排序,在第一空处是初始化k。“for(j=i+1;j<N;j++)”循环是寻找长度最长的字符串,找到之后和k字符串交换,因此k从0开始,随着i变化,故第一空处应为“i”。
第二空:“if(strlenq(ps[k])<strlen(__2__))k=j;”新的字符串ps[j]如果比ps[k]的长度长,那么k记录下新的最长的字符串的下标位置j,故第二空处应为“ps[j]”。
第三空:“tp=ps
;ps
=ps[k];ps[k]=__3___;”是字符串地址交换,显然第三空处应是临时变量tp。
转载请注明原文地址:https://www.kaotiyun.com/show/0IRp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
下述函数统计—个字符串中的单词个数,单词是指处在空格之间的字符序列,请填空。intword(char*s){intnum=0,flag=0;while(*s){if(【】=’’)flag=0;elseif(【】){
阅读下述程序段:y=-1;if(x!=0)if(x>0)y=1;elsey=0;该程序段所描述的数学关系是()
执行以下程序后,a,b的值分别为main(){ina,b,k=4,m=6,*p1=&k,*p2=&m;a=p1==&m;b=(*p1)/(*p2)+7;printf("a=%d\n",a);
在下列语句中,其含义为“q是一个函数指针,该指针指向整型数据”的定义语句是()。
数据独立性是数据库技术的重要特点之一。所谓数据独立性是指()。
下列软件系统结构图的宽度为【】。
若有定义和语句: inta[10]={1,2,3,4,5,6,?,8,9,10},*p=a; 则不能表示a数组元素的表达式是()
数据库的故障恢复一般是由()
有以下程序intfa(intx){returnx*x;}intfb(intx){returnx*x*x;}intf(int(*fl)(),int(*f2)(),intx}{returnf2(x)-f1(x)
结构化分析方法是面向()的自顶向下逐步求精进行需求分析的方法。
随机试题
在大型平板拼接工艺中,应用( )进行检测,其精度和效率比传统平板拼接工艺好。
心悸瘀阻心脉证的代表方剂是
参与式方法的运用,有助于增强项目的()。
下列叙述行为属于工程转包的有()。
用于瓶装燕京啤酒生产线的贴标签机
2015年年底,甲公司受到大规模P2P行业“非法集资案”的影响,经济也陷入危机。2016年1月10日,甲公司债权人乙公司依法向A区人民法院申请甲公司破产,A区人民法院依法受理了乙公司提出的破产申请,指定丙律师事务所为管理人,于3月20日通知了已知债权人并予
消费者权益争议的解决途径包括()。
某外国航空公司经理:“新开发的避撞系统,虽然还未经全面测试以发现潜在的问题,但必须马上在客机上安装,因为这个系统的机械报警装置可以使飞行员避免撞机事故。”该公司飞行员:“飞行员不能驾驶一架避撞系统未经全面测试的飞机,因为有故障的避撞系统将会误导飞行员,造成
欧洲中世纪的骑士教育是世俗教育的一种主要形式,它由专门的骑士学校进行。
Areyouawarethatyouactuallypossesssixsenses?Thesixthisamuscularsenseresponsiblefordirectingyourmusclesintelli
最新回复
(
0
)