找最长字符串:输入n个字符串 输出其中最长的字符串 调用函数scanf()输入字符串 试编写相应程序。
(1)每次都赋值到b,会把之前的给覆盖掉
(2)for循环中读取的字符串个数只有n-1个。
修改方法:
在for循环前加一句:
scanf("%s",b);
然后把第13行删掉
代码修改如下:
#include <stdio.h>
#include <string.h>
int main()
{
int n, i;
char array[100], b[100];
printf("Enter n:");
scanf("%d", &n);
printf("Enter %d strings:", n);
scanf("%s", b); //修改1 添加这一句
for (i = 1; i < n; i++)
{
scanf("%s", array);
//strcpy(b, array); //修改2 注释掉这一句
if (strlen(b) < strlen(array))
strcpy(b, array);
}
printf("%s", b);
return 0;
}
不用复制啊,记下长度比较就行
您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!