首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
给定程序中,函数fun的功能是:求ss所指字符串数组中长度最短的字符串所在的行下标,作为函数值返回,并把其串长放在形参n所指变量中。ss所指字符串数组中共有M个字符串,且串长<N。 请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结
给定程序中,函数fun的功能是:求ss所指字符串数组中长度最短的字符串所在的行下标,作为函数值返回,并把其串长放在形参n所指变量中。ss所指字符串数组中共有M个字符串,且串长<N。 请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结
admin
2019-03-06
39
问题
给定程序中,函数fun的功能是:求ss所指字符串数组中长度最短的字符串所在的行下标,作为函数值返回,并把其串长放在形参n所指变量中。ss所指字符串数组中共有M个字符串,且串长<N。
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANK1.C中。
不得增行或删行,也不得更改程序的结构!
1 #include<stdio.h>
2 #include<string.h>
3 #define M 5
4 #define N 20
5 int fun(char(*ss)[N],int *n)
6 { int i,k=0,len=N;
7 /**********found**********/
8 for(i=0;i< ___1___ ;i++)
9 {len=strlen(ss
);
10 if(i==0) *n=len;
11 /**********found**********/
12 if(len __2__*n)
13 {*n=len;
14 k=i;
15 }
16 }
17 /**********found**********/
18 return( __3__ );
19 }
20 main()
21 { char ss[M][N]={’’shanghai’’,’’guangzhou’’,’’beijing’’,’’tianjing’’,’’chongqing’’);
22 int n,k,i;
23 printf(’’\nThe original strings are:\n’’);
24 for(i=0;i<M;i++)puts(ss
);
25 k=fun(ss,&n);
26 printf(’’\nThe length of shortest string is:%d\n’’,n);
27 printf(’’\nThe shortest string is:%s\n’’,ss[k]);
28 }
选项
答案
(1)M (2)< (3)k
解析
函数fun的功能是求ss所指字符串数组中长度最短的字符串所在的行下标。求最短字符串所在的下标,一般假设第一个字符串的长度最短min,用k记录最长字符串的下标的话,开始时min=strlen(ss[0]),k=0,然后逐个比较其他字符串长度,如果字符串ss
长度比min小,则将min赋值为这个字符串长度,“k=i”,如此便可求得最短字符串和最短字符串所在的下标位置。
第一空:循环的目的是在M个字符串中寻找长度最短的字符串,因此,循环变量i从0变化到“M-1”,故第一空处应为“M”。
第二空:“*n”记录最小字符串的长度,由审题分析可知,字符串ss
长度比min小,则交换最小长度值和下标位置,故第二空处应为“<”。
第三空:变量k记录了最小字符串的下标位置,函数的返回值是最短的字符串所在的行下标,故第三空处应为“k”。
转载请注明原文地址:https://jikaoti.com/ti/4kf0FFFM
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
fun函数的功能是:首先对a所指的N行N列的矩阵,找出各行中的最大数,再求这N个最大值中的最小的那个数作为函数值返回。请填空______。#include<stdio.h>#defineN100intfun(int(*a)
有如下程序:main(){intx=23;do{printf("%d",x--);}while(!x);}程序运行后的输出结果是()。
在C语言中,只有在使用时才占用内存单元的变量,其存储类型是
若有定义:int*p[3];则以下叙述中正确的是()。
以下程序段中的变量已正确定义:for(i=0;i<4;i++,i++)for(k=1;k<3;k++);printf("*");程序段的输出结果是______。
以下程序段 main( ) {inta=5,*b,**c; c=&b;b=&a; …… } 程序在执行了c=&b;b=&a;语句后,表达式:**c的值是
下列程序段的输出结果是______。int**pp,*p;inta=10,b=20;p=&a;pp=&p;p=&b;printf("%d,%d\n",*p,**pp);
执行下列程序时输入:123<空格>456<空格>789<回车>,输出结果是()main(){chars[100]intc,i;scanf("%c",&C);scanf("%d",&i);
若按功能划分,软件测试的方法通常分为白盒测试方法和【】测试方法。
设函数fun的定义形式为voidfun(charch,floatx){…}则以下对函数fun的调用语句中,正确的是
随机试题
3,8,23,68,(),608
促使市场变化的市场因素不包括()
麻杏石甘汤中麻黄配石膏的作用是
胃液中盐酸的分泌部位主要是
A.脉搏短绌B.水冲脉C.奇脉D.颈静脉搏动E.交替脉缩窄性心包炎,多表现为
心理咨询过程中如果出现由咨询师引起的咨询失误现象,恰当的处理方式包括()。
数学是人类的一种文化,它的内容、思想、()是现代文明的重要组成部分。
小区门口乱停车、污水横流、商贩乱摆放现象,大大影响了市容市貌和群众的生活品质。造成这种现象的原因是多方面的,从根本上解决这一问题还需各方面共同努力。首先,小区住户和附近居民应该自觉爱护我们的环境,有序停车,抵制商贩乱摆摊;其次,物业管理
某工厂出台一项全员加薪计划,其主要内容为:“工作五年及五年以下的,按50元/年的标准进行调整,工作超过5年的,超过部分按80元/年的标准进行调整,工作年份按整数计算,不足一年的部分不作计算”。某夫妇两人均在该次计划之列,丈夫加的薪水比妻子多340元,则夫妻
关于共享介质以太网的描述中,正确的是()。
最新回复
(
0
)