#define MAXI 120000
/////////////////////////
int line=0;
int max_line=0;
char sh;
char len[MAXI];
char max_len[MAXI];
/////////////////////////
void copyline(char line_in[],char line_out[],int size_line)
{
int counter=0;
while(counter<12000-1)
{
max_len[counter]=len[counter];
counter++;
};
max_len[counter++]='\0';
line=0;
};
char get_line()
{
while((sh=getchar())!=EOF)
{
if(sh!='\n')
{
len[line]=sh;
line++;
};
if(sh=='\n' && line>max_line)
{
max_line=line;
copyline(max_len,len,line);
};
if(sh=='q') break;
};
};
///////////////////////
int main()
{
get_line();
printf("%d\n%s\n",max_line,max_len);
return 0;
};
Вывод самой длинной строки. Почему если вводить
0
00
000
0000
00000
000000
q
выводит :
6
000000
rugerkr
iwrghvuifhviuwrh
irvhuiwrh
werilvuhfui
q
выводит:
20
irvhuiwrhwerilvuhfui
то есть строки сливаются и число символов не верно.