Подсчет самой длинной строки и её вывод. СИ
Сегодня решил такую задачу. Необходимо из большого количества строк введенных методом getchar(); вывести самую длинную из них. В этой задача пришлось написать собственные функции, одну для копирования символьного массива, другую для подсчета символов.
#include <stdio.h>
#define N 100
void my (int k[], int v[]);
int pod (int s[], int f[]);
main()
{
int c, m[N], max[N], k=0;
while((c=getchar())!=EOF)
{
if (c!='\n' && k<N)
{
m[k]=c;
k++;
}
else
{
m[k]='\0';
if(c=='\n')
k=0;
if(pod(m, max))
my(m, max);
}
}
for(k=0; max[k]!='\0';k++)
putchar(max[k]);
}
void my (int a[], int b[])
{
int i, kol=0, kol1=0;
for(i=0; i<N; i++)
b[i]=a[i];
}
int pod(int a[], int b[])
{
int i, j;
for (i=0; a[i]!=0; i++);
for (j=0; b[j]!=0; j++);
if (i>j)
return 1;
else
if(i<j || i==0)
return 0;
}
