首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
编写—个函数,其功能是:从传入的num个字符中找出最长的一个字符串,并通过形参指针max传回该串地址(用****作为结束输入的标识)。 注意:部分源程序在文件PROG1.C中。 请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编
编写—个函数,其功能是:从传入的num个字符中找出最长的一个字符串,并通过形参指针max传回该串地址(用****作为结束输入的标识)。 注意:部分源程序在文件PROG1.C中。 请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编
admin
2017-02-24
69
问题
编写—个函数,其功能是:从传入的num个字符中找出最长的一个字符串,并通过形参指针max传回该串地址(用****作为结束输入的标识)。
注意:部分源程序在文件PROG1.C中。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
试题程序:
1 #include<conio.h>
2 #include<stdio.h>
3 #include<string.h>
4 #include<stdlib.h>
5 char*fun(char(*a)[81],int num,char * max)
6 {
7
8 }
9 void main()
10 {
11 FILE*wf;
12 char ss[10][81],*ps=NULL;
13 char s[3][81]={"abcd","deg","diegns"),*P=NULL;
14 int i=0,n;
15 system("CLS");
16 printf("输入若干个字符串:");
17 gets(ss
);
18 puts(ss
);
19 while(!strcmp(ss
,"****")==0)/*用4个星号作为结束输入的标志*/
20 {
21 i++;
22 gets(SS
);
23 puts(SS
);
24 }
25 n=i;
26 ps=fun(ss,n,ps);
27 printf("\nmax=%s\n",ps);
28 /*****************/
29 wf=fopen("out.dat","w“);
30 P=fun(s,3,p);
31 fprintf(wf,"%s",P);
32 fclose(wf);
33 /******************/
34 }
选项
答案
char *fun(char(*a)[81],int num, char *max) { int i=0; max=a[0]; for(i=0;i<num;i++) /*找出最长的一个字符串*/ if(strlen(max) <strlen(a[i])) max=a[i]; return max;/*传回最长字符串的地址*/ }
解析
首先应该明白ss是一个指向一维数组的指针变量,max是指向指针的变量,所以引用变量时要注意加上*。本程序使用循环语句遍历字符串数组,使用条件语句判断该字符串是否最长。
转载请注明原文地址:https://www.kaotiyun.com/show/s0Dp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
阅读下面程序,则执行后的输出结果是______。#include"stdio.h"main(){intx,y,z;x=1;y=2;z=3;if(x>y)if(x>z)printf("%d",x);elseprintf("%d",y)
下面程序段的运行结果是chara[]="lanuage",*p;p=a;while(*p!=’u’){printf("%c",*p-32);p++;}
有如下程序main(){intn=9;while(n>6){n--;printf("%d",n);}}该程序的输出结果是
若有说明:int*p,m=5,n;,以下正确的程序段是
以下程序的功能是:求出数组x中各相邻两个元素的和依次存放到a数组中,然后输出。请填空。main(){intx[10],a[9],I;for(I=0;I
已有定义:charc=′′;inta=1,b;(此处c的初值为空格字符),执行b=!c&&a;后b的值为【】。
下列程序的输出结果是#include"stdio.h"#defineN3#defineM3voidfun(inta[M][N]){printf("%d\n",*(a[1]+2));}main(){inta
有以下程序intadd(inta,intb){return(a+b);}main(){intk,(*f)(),a=5,b=10;f=add;…}则以下函数调用语句错误的是
若变量均已正确定义并赋值,以下合法的C语言赋值语句是
随机试题
连接上、下腔静脉系的血管有()
A.血虚发热B.瘀血发热C.气虚发热D.肝郁发热E.阴虚发热发热常在劳累后发作或加重,气短自汗,易感冒,内伤发热证属
A.淡渗利湿药B.破血逐瘀药C.涩肠止泻药D.固表止汗药E.寒凉药阴虚津亏者忌
以下哪项不是一种风险类型?
财务风险是普通股票的主要风险,公司盈利的变化既会影响股息收入,又会影响股票价格。( )
B公司是一家制造企业,没有优先股,目前发行在外的普通股为1000万股。假设B公司的资产全部为经营资产,流动负债全部是经营负债,长期负债全部是金融负债。公司目前已达到稳定增长状态,未来年度将维持2015年的经营效率和财务政策不变,不增发新股和回购股票,可以按
一切为了群众,就是要把全心全意为人民服务的思想与履行自己的职责统一起来,一方面有效地打击违法犯罪,另一方面保障人民群众的权利和利益。()
向机关、团体、企业、事业单位和公民收集或者调取证据时,侦查人员不得少于2人,并持有公安机关介绍信和侦查人员工作证。()
公共政策过程的公众参与主要强调的是整个政策过程的参与。我国公民参与公共政策过程,主要有制度性和非制度性两种渠道。下列属于非制度性的公民参与形式的是()。
应对全球性重大挑战和________,攸关各国国计民生,对维护世界和平稳定、促进各同________发展“至关重要”,要努力维护共同应对全球性挑战和威胁的良好政治环境。填入横线部分最恰当的一项是()。
最新回复
(
0
)