首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC++2010打开考生文件夹下prog1中的解决方案。此解决方案的项目中包含一个源程序文件prog1.c。在此程序中,编写一个函数,其功能是:从传入的num个字符中找出最长的一个字符串,并通过形参指针max传回该串地址(用****作为结束输入的标识)
使用VC++2010打开考生文件夹下prog1中的解决方案。此解决方案的项目中包含一个源程序文件prog1.c。在此程序中,编写一个函数,其功能是:从传入的num个字符中找出最长的一个字符串,并通过形参指针max传回该串地址(用****作为结束输入的标识)
admin
2018-08-11
33
问题
使用VC++2010打开考生文件夹下prog1中的解决方案。此解决方案的项目中包含一个源程序文件prog1.c。在此程序中,编写一个函数,其功能是:从传入的num个字符中找出最长的一个字符串,并通过形参指针max传回该串地址(用****作为结束输入的标识)。
注意:部分源程序在文件PROG1.C中。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
试题程序:
#inclucte<conio.h>
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
char*fun(char(*a)[81],int
num,char*max)
{
}
void ma2n()
{
FILE*wf;
char ss[10][81],*ps=NULL;
char s[3][81]={"abcd","deg","diegns"},*p=NULL;
int i=0,n;
system("CLS");
printf("输入若干个字符串:");
gets(ss
);
puts(ss
);
while(!strcmp(ss
,"****")==0)/术用4个星号作为结束输入的标志*/
{
i++;
gets(ss
);
puts(ss
);
}
n=i;
ps=fun(ss,n,ps);
printf("\nmax=%s\n",ps);
/*********found*********/
wf=fopen("out.dat","w");
p=fun(s,3,p);
fprintf(wf,"%s",p);
fclose(wf);
/*********found*********/
}
选项
答案
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])) msx=a[i]; return max;/*传回最长字符串的地址*/ }
解析
解答本题之前,首先应该明白ss是一个指向一维数组的指针变量,max是指向指针的变量,所以引用变量时要注意加上*。本程序使用循环语句遍历字符串数组,使用条件语句判断该字符串是否最长。
转载请注明原文地址:https://kaotiyun.com/show/Rjxp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
分析下列程序:#include<stdio.h>main(){int*p1,*p2,*p;inta=6,b=9;p1=&a;p2=&b;if(a<b){p=p1;p1=p2;p
有以下程序main(){inta[4][4]={{1,4,3,2},{8,6,5,7},{3,7,2,5},{4,8,6,1}},i,j,k,t;for(i=0;i<4;i++)for(j=0;j<3;j++)fo
有如下程序main(){floatx=2.0,y;if(x10.0)y=1.0/x;elsey=1.0;printf("%f\n",y);}该程序的输出结果是
以下程序运行后的输出结果是【 】。main(){charc;intn=100;floatf=10;doublex;x=f*=n/=(c=50);printf("%d%f\n",
如下程序的输出结果是#include<stdio.h>main(){chsrch[2][5]={"6937","8254"},*p[2];inti,j,s=0;for(i=0;i<2;i++)p[i]=c
数据库的物理设计是为一个给定的逻辑结构选取一个适合应用环境的______的过程,包括确定数据库在物理设备上的存储结构和存取方法。
以下程序运行后输入3,abcde<回车>,则输出结果是【】。#include<string.h>move(char*str,intn){chartemp;inti;temp=str[n-1];for
设函数fun的定义形式为:voldfun(charch,floatx){……}则以下对函数fun的调用语句中,正确的是()。
设变量均已正确定义,若要通过scanf("%d%c%d%c",&a1,&c1,&a2,&c2);语句为变量a1和a2赋数值10和20,为变量c1和c2赋字符X和Y。以下所示的输入形式中正确的是(注:□代表空格字符)
下述函数统计一个字符串中的单词个数,单词是指处在空格之间的字符序列,请填空。intword(char*s){intnum=0,flag=0;while(*s){if(【】==’’)flag=0;
随机试题
患者女性,60岁,因瘫痪长期卧床,骶尾部形成压疮,面积约5cm×6cm。该患者治疗措施不当的是
在体积为VL的密闭容器进行如下反应:则tmin时,D物质增加的物质的量为()。
因履行集体合同发生的争议,可以()。
建立下表科目,并装入期初余额
人民法院依法宣告甲公司破产,下列各项中构成别除权的有()。
《民法通则》规定,法人应当具备下列条件( )。
(2008年湖北省枣阳市事业单位真题)
通货膨胀的根源通常无非两种,供给冲击或者是总需求过度。供给冲击的例子很多,农业________,国际油价暴涨还有自然灾害,这些都可能会引发一些产品的供应________,从而导致价格上涨。依次填入画横线部分最恰当的一项是()。
人们不喜欢丢掉自己的原有“地盘”,不喜欢丢面子。他们往往陷入一种思想陷阱,也就是经济学家所说的“沉没成本”,它指一种时间和金钱的投资只有在产品销售成功后才可顺利回收。在英语国家中,也被称为“将钱掉进排水沟里”。这段文字意在告诉我们()。
评判一家公司业绩的一种方法是将其与其他公司进行对比。这种技术通常称为“对照基准点”,它使公司经理可以发现更好的行业行动,并且能为采取好的行动提供正当的理由。下面每项如果正确,都足以构成把一家公司的业绩和不与之形成竞争的公司而非竞争者进行基准点对照
最新回复
(
0
)