输出最长的一行 出现问题
#include<stdio.h>#define MAXLINE 100
void main()
{
int max = 0,len,i;
char line[MAXLINE];
char longest[MAXLINE];
int getline(char s[],int max);
void copy(char to[],char from[]);
for(i=0;i<3;i++)
if((len=getline(line,MAXLINE))>max)
{
max=len;
copy(longest,line);
}
if(max>0)
printf("%s",longest);
}
int getline(char s[],int max)
{
char c;
int i;
for(i=0;i<max-1;i++) //for(i=0;i<max-1&&(c=getchar())!=EOF && c!='\n';i++)
if((c=getchar())!=EOF && c!='\n')
s[i]=c;
if(c=='\n')
{
s[i]=c;
++i;
}
s[i]='\0';
return i;
}
void copy(char to[],char from[])
{
int i=0;
while((to[i]=from[i])!='\0')
++i;
}
程序无法输出结果 找了好久 没找到错误