输入5个字符串,输出其中最长的字符串。

#include<string.h>#include<stdio.h>intmain(){inti;charsx[80],max[80];scanf("%s",max);... #include <string.h>
#include <stdio.h>
int main()
{
int i;
char sx[80], max[80];
scanf("%s", max);
for(i=1;i<5;i++)
scanf("%s", &sx);
if(strcmp(max,sx)<0)
strcpy(max,sx);
}
printf("max is: %s\n",max);
return 0;
}
为啥错了?
展开
 我来答
问明6E
高粉答主

2019-06-12 · 每个回答都超有意思的
知道答主
回答量:279
采纳率:100%
帮助的人:12.5万
展开全部

#include<stdio.h>

#include<string.h>

int main()

int i=0;

char s[80]={""},max[80]={""};

printf("输入五个字符串:\n");

scanf("%s",s);

strcpy(max,s);

for(i=1;i<5;i++)

scanf("%s",s);

if(strcmp(max,s)<0)

strcpy(max,s);

printf("最长的字符串是:%s\n",max);

return0;

运行例:

扩展资料:

用法:int scanf(char*format,[argument,...]);

scanf()函数是通用终端格式化输入函数,它从标准输入设备(键盘)读取输入的信息。可以读入任何固有类型的数据并自动把数值变换成适当的机内格式。

其调用格式为:scanf(“&lt;格式化字符串&gt;”,&lt;地址表&gt;);

scanf()函数返回成功赋值的数据项数,出错时则返回EOF;

其控制串由三类字符构成:

1、格式化说明符

2、空白符

3、非空白符

格式化说明符

附加格式说明字符表:

空白字符

空白字符会使scanf()函数在读操作中略去输入中的一个或多个空白字符,空白符可以是space,tab,newline等等,直到第一个非空白符出现为止。

非空白字符

一个非空白字符会使scanf()函数在读入时剔除掉与这个非空白字符相同的字符。

匿名用户
推荐于2018-05-15
展开全部
strcmp函数不是比较两个字符串的长度大小 而是比较两个字符串中对应字符,直到第一个不同的字符中的ASCII码的大小,比较字符串长度用strlen函数查看有效字符个数然后做比较是最好的
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
ky3ff9
2013-12-20
知道答主
回答量:15
采纳率:0%
帮助的人:3.4万
展开全部
#include <stdio.h>
#include <string.h>
int main()
{
int i;
char sx[80], max[80];
scanf("%s", max);
for(i=1;i<5;i++){
scanf("%s", &sx);
if(strcmp(max,sx)>0)
strcpy(max,sx);

}
printf("max is: %s\n",max);
return 0;
}
小于0改为大于0
for少一个{
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式