输入5个字符串,输出其中最长的字符串。
#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;
}
为啥错了? 展开
#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(“<格式化字符串>”,<地址表>);
scanf()函数返回成功赋值的数据项数,出错时则返回EOF;
其控制串由三类字符构成:
1、格式化说明符
2、空白符
3、非空白符
格式化说明符
附加格式说明字符表:
空白字符
空白字符会使scanf()函数在读操作中略去输入中的一个或多个空白字符,空白符可以是space,tab,newline等等,直到第一个非空白符出现为止。
非空白字符
一个非空白字符会使scanf()函数在读入时剔除掉与这个非空白字符相同的字符。
推荐于2018-05-15
#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少一个{