首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
给定程序中,函数fun的功能是:利用指针数组对形参ss所指字符串数组中的字符串按由长到短的顺序排序,并输出排序结果。ss所指字符串数组中共有N个字符串,且串长小于M。 请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
给定程序中,函数fun的功能是:利用指针数组对形参ss所指字符串数组中的字符串按由长到短的顺序排序,并输出排序结果。ss所指字符串数组中共有N个字符串,且串长小于M。 请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
admin
2019-03-06
64
问题
给定程序中,函数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全国计算机二级
相关试题推荐
_____________的目的是分析数据问内在语义关联,在此基础上建立一个数据的抽象模型。
下面程序段的运行结果是chara[]="lanuage",*p;p=a;while(*p!=′u′){printf("%c",*p-32);p++;}
有如下程序main(){charch[2][5]={"6937","8254"},*p[2];inti,j,s=0;for(i=0;i<2;i++)p[i]=ch[i];fo
以下四组用户自定义标识符中,全部合法的一组是()。
下面程序的功能是将一个字符串str的内容颠倒过来,请填空。#include<string.h>main(){infi,j,[13];charstr[]={"1234567"};for(i=0,j=strlen(str)[14]
设有以下定义:strucksk{inta;floatb;}data;int*p;若要使p指向data中的a域,正确的赋值语句是()。
以下程序运行后的输出结果是【 】。main(){inta=3,b=4,c=5,t=99;if(b<a&&a<c)t=a;a;a=c;c=tif(a<c&&b<c)t=b;b=a;a=t;prin
有如下程序;intfunc(inta,intb){return(a+b);}main(){intx=2,y=5,z=8,r;r=func(func(x,y),z);pr
利用fseek函数可实现的操作是()。
随机试题
试述会议纪要的写作应注意的问题。
运用知识、技能、经验、信息提供服务的脑力劳动,旨在为他人出谋划策、帮助解决疑难问题的活动称为()
拍卖人接受委托后对拍卖标的进行鉴定的,如果鉴定结论与委托合同载明的拍卖标的状况不相符,拍卖人有权要求()。
如游客在旅游过程中遭遇财物被抢事件,领队人员应()。
制定起草企业绩效管理制度的基本要求是()。
“DNA是遗传物质”的教学片段一、课件展示很早以前,大家一致认为,被视为生命中心成分的蛋白质是遗传物质,理由是蛋白质一方面对于生命是极其重要的,另一方面蛋白质不仅有二十种基本组成单位,而且形状和大小多样。简单地说,蛋白质是复杂的,这正是作为遗传物质的必
结合材料问答问题:材料1计划多一点还是市场多一点,不是社会主义与资本主义的本质区别。计划经济不等于社会主义,资本主义也有计划;市场经济不等于资本主义,社会主义也有市场,计划和市场都是经济手段。——摘自邓小平1992年南方谈话
打印机是一种文字图形输出设备。下面是有关打印机的叙述Ⅰ.针式打印机因打印分辨率低、噪声大、速度慢,目前在市场上已经被淘汰Ⅱ.激光打印机打印质量高、噪声低、大都用于银行、证券等行业的前台业务处理Ⅲ.喷墨打印机的特点是能输出彩色图
Whatdoweknowaboutthespeakers?
Threekeyfactsaboutrisingsealevelsneedtobepointedouttotheworld’spoliticiansandplanners:sea-levelriseisnowin
最新回复
(
0
)