首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
给定程序中,函数fun的功能是:利用指针数组对形参ss所指字符串数组中的字符串按由长到短的顺序排序,并输出排序结果。ss所指字符串数组中共有N个字符串,且串长小于M。 请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。 注意
给定程序中,函数fun的功能是:利用指针数组对形参ss所指字符串数组中的字符串按由长到短的顺序排序,并输出排序结果。ss所指字符串数组中共有N个字符串,且串长小于M。 请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。 注意
admin
2021-04-28
68
问题
给定程序中,函数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函数采用的选择排序,在第一空处是初始化k。“for(j=i+1;j<N;j++)”循环是寻找长度最长的字符串,找到之后和k字符串交换,因此k从0开始,随着i变化,故第一空处应为’’i’’。
第二空:“if(strlen(ps[k])<strlen(__2__) k=j;”新的字符串ps[j]如果比ps[k]的长度长,那么k记录下新的最长的字符串的下标位置j,故第二空处应为“ps[j]”。
第三空:“tp=ps
;ps
=ps[k];ps[k]=__3__;”是字符串地址交换,显然第三空处应是临时变量tp。
转载请注明原文地址:https://kaotiyun.com/show/7Jtp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
下列叙述中,不属于软件需求规格说明书的作用的是()。
有以下程序main(){inta=1,b=2;for(;a<8;a++){b+=a;a+=2;}printf("%d,%d\n",a,b);}程序运行后的输出结果是
有以下程序#include<stdio.h>structSTU{charname[9];charsex;intscore[2];};voidf(structSTUa[]){structSTUb={’’zhao’’,’m’,85,90);a[1]=
有以下程序:#includeintfun(charP[][10]){intn=0,i;for(im=0;i
以下叙述中正确的是
若有以下程序#includemain(){charw[20],a[5][10]={"abcdef","ghijkl","mnopq","rstuv","wxyz"};intp[6][2]={{0,1},{1,5},{0,0}
以下选项中,当x为大于1的奇数时,值为0的表达式是()。
以下选项中叙述错误的是
有以下程序段intn,t=1,s=0;scanf("%d",&n);do{s=s++;t=t-2;}while(t!=n);为使此程序段不陷入死循环,从键盘输入的数据应该是
执行以下程序后,test.txt文件的内容是(若文件能正常打开)#include<stdio.h>main(){FILE*fb;char*s1="Fortran",*s2="Basic";if((fb=fopen("test.txt","wb")
随机试题
A.刷状缘明显,由大量微绒毛形成B.无刷状缘,微绒毛甚少C.基底部有纵纹,侧面无侧突D.基底部无纵纹,侧面无侧突近端小管()
A.攻逐水饮B.峻下热结C.攻下寒积,温补脾阳D.温肾益精,润肠通便E.温里散寒,通便止痛
下列钢筋混凝土预制桩锤击法施工的做法中,不正确的是()。
会计职业道德的作用主要有()。
下列会计事项中,可能会引起留存收益总额发生增减变动的是()。
论述浪漫主义芭蕾的艺术特征。
下列有关法律责任的表述,正确的有()。
设D={(χ,y)|χ2+y2≤2χ+2y},求I=(χ+y2)dχdy.
Themothersatbythewindow______theholeinhercoat.
Humanshavealwayslookedattheheavensand【C1】______aboutthenatureoftheobjectsseeninthenightsky.Withthedevelopmen
最新回复
(
0
)