首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
给定程序中,函数fun的功能是:利用指针数组对形参ss所指字符串数组中的字符串按由长到短的顺序排序,并输出排序结果。ss所指字符串数组中共有N个字符串,且串长小于M。 请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
给定程序中,函数fun的功能是:利用指针数组对形参ss所指字符串数组中的字符串按由长到短的顺序排序,并输出排序结果。ss所指字符串数组中共有N个字符串,且串长小于M。 请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
admin
2015-06-08
71
问题
给定程序中,函数fun的功能是:利用指针数组对形参ss所指字符串数组中的字符串按由长到短的顺序排序,并输出排序结果。ss所指字符串数组中共有N个字符串,且串长小于M。
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANKl.C中。
不得增行或删行,也不得更改程序的结构!
#include
#include
#define N 5
#defime M 8
void fun(char(*ss)[M])
{ char * ps[N],*tp;int i,j,k;
for(i=0;i
=ss
;
for(i=0; i
/**********found***********/
k= ___1___;
for(j=i+1 ; j
/**********found***********/
if(strlen(ps[k])
(___2___))k=j;
/**********found***********/
tp=ps
; ps
=ps[k];ps[k]=
___3___;
}
printf(“\nThe string after sorting
by length:\n\n”);
for(i=0; i
);
}
main()
{ char ch[N][M]={“red”,“green”,
“blue”,“yellow”,“black”};
int i ;
printf(“\nThe original string\n\n”);
for(i=0;i
);
printf(“\n”);
fun(ch);
}
选项
答案
(1)i (2)ps[j] (3)tp
解析
本题中函数fun的功能是利用指针数组对形参ss所指字符串数组中的字符串按由长到短的顺序排序,并输出排序结果。在fun函数中采用了选择排序法,在选择排序法中的降序排序,首先从数组中挑选一个最大的元素,把它和第一元素交换,接着从剩下的n—1个元素中再挑出一个最大的元素,把它和第二个元素交换,不断重复以上过程,直到比较完最后两个元素。
[解题思路]
第一空:分析可知,fun函数采用的选择排序,在第一空处是初始化k。“for([j=i+1;j
第二空:“if(strlen(ps[k])<strlen(____2____))k=j;”新的字符串ps
如果比ps[k]的长度长,那么k记录下新的最长的字
符串的下标位置j,故第二空处应为“ps[j]”。
第三空:“tp=ps
;ps
=ps[k];ps[k]=____3____;”是字符串地址交换,显然第三空处应是临时变量tp。
转载请注明原文地址:https://kaotiyun.com/show/wiJp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
数据库设计包括两个方面的设计内容,它们是()。
下面程序的输出是【】。main(){enumem{em1=3,em2=1,em3};char*aa[]={"AA","BB","CC","DD"};printf("%s%s%s\n",aa[em1],aa[e
【】是数据库应用的核心。
设一棵完全二叉树共有500个结点,则在该二叉树中有【】个叶子结点。
下面程序运行后的输出结果是______。structabc{inta,b,c;}main(){structabcs[2]={{1,2,3},{4,5,6}};intt=-s[0].a
有如下程序:#definen2#definemN+1#defineNUM2*m+1main(){inti;for(i=1;i<=NUM;i++)printf("%d\n",
在C语言中,函数中变量的隐含存储类别是______。
请选出司用作C语言用户标识符的一组标识符_______。
若已定义:inta[9],*p=a;并在以后的语句中未改变p的值,不能表示a[1]地址的表达式是_______。
假定下列程序的可执行文件名为filel.exe,在该程序的子目录下输入命令行:file1ChinaBejing<回车>main(intargc,char*argv[]){while(argc-->1)printf("
随机试题
对于在蒸发过程中有晶体析出的液体的多效蒸发,最好用()蒸发流程。
A.1:5000高锰酸钾B.2%碳酸氢钠C.0.3%H2O2D.0.3%氧化镁镇静药物中毒的洗胃液是
新生仔畜溶血症治疗错误的是
设计单位的选定可以采用()等方式。
关于大宗交易,下列描述正确的有( )。
在我国,证券交易所专用席位是用于()交易的席位。
下列情形中用人单位可以解除劳动合同的是()
Woman:Ihaven’tseenJohnforsometimenow.Man:Hehadanaccident.Itoldhimnottodriveonlikethat.Question:Whatdoest
编写如下程序:PrivateSubCommand1Click()n=InputBox(“输入一个数”)DoWhilen0Printn\10MOd10;:PrintnMod10;:11=n\100LoopPrintsE
Mysisterisn’t______togotoschool.
最新回复
(
0
)