标题
寻找最长的行
问题描述
寻找若干行文本中最长的一行
输入说明
输入为多个字符串(每个字符串长度不超过100个字符),每个字符串占一行,输入的行为“end”时表示输入结束
输出说明
输出其中最长的一行长度后换行再输出最长行的内容,如果最长行不止一个,则输出其中的第一行。
输入样例
abce
abdf dlfd
***end***
输出样例
9
abdf dlfd
#include <stdio.h>
#include <string.h>
//72.找出最长行
//思路:
//while (1) {
// 输入新行;//用gets输入一行文本
// if(是结束行)break;//用strcmp比较
// if (新行比以前记录的最长行更长){ //用strlen求一行长度
// 记录新行及其长度//用strcpy保存新行
// }
//}
//输出所记录的最长行; //用printf/puts输出结果
int main(){
char s[100],end[100];
gets(s);
int len,max;
max=strlen(s);//求出字符串的最大长度
//把字符串的s的内容全部复制到end中
strcpy(end,s);
while(1){//字符串比较
gets(s);
len=strlen(s);
if(strcmp(s,"***end***")==0 ){
break;
}
if(len>max){
max=len;
strcpy(end,s);
}
}
printf("%d\n",max);
puts(end);
return 0;
}