Hary z Bochni Opublikowano 3 Listopada 2005 Zgłoś Opublikowano 3 Listopada 2005 dopiero zaczynam programować i proszę o pomoc. Program ma znaleść najdłuższy wiersz i go wypisać wypisje bez pierwszego znaku jeśli ma ktoś odrobinę dobrej woli to proszę żeby zerkną: # include<stdio.h> # include<conio.h> int getline(char a[],int lim); void copy(char longest[],char line[]); char longest[1000]; char line[1000]; int czyt,max; int main() { char d; int i; max=0; while((d=getchar())!='q') { czyt=getline(line,1000); if(czyt>max) { max=czyt; copy(longest,line); } } printf("%s",longest); getch(); return 0; } int getline(char a[],int lim) { int i; char c; for (i=0;i<=(lim-1)&&(c=getchar())!='1'&&c!='\n';i++) a=c; if (c=='\n') i++; return i; } void copy(char longest[],char line[]) { int i; for(i=0;i<=max-1;i++) longest=line; } Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...
Haquim Opublikowano 3 Listopada 2005 Zgłoś Opublikowano 3 Listopada 2005 (edytowane) 1735020[/snapback] Ten kod jest za skomplikowany zeby go zrozumiec :lol2: ja bym napisał tak #include <stdio.h>#include <string.h>#define MAX 1001int main(){char temp[MAX];char wynik[MAX];wynik[MAX-1]='\0';temp[MAX-1]='\0';int length=0;int max_length=0;char c; do { printf ("wpisz łańcuch\n");//czytamy z pliku - standardowego wejścia co najwyzej MAX-1 znaków fgets(temp,MAX-1, stdin); length = strlen(temp); if (length>max_length) { max_length=length; //kopiujemy co najwyzej MAX znaków // chyba ze przejdziemy do nowej linii memccpy(wynik,temp,'\n',MAX); } printf("jak chcesz skonczyc to wpisz q\n"); //tozsame z getc(stdin); c = getchar() } while(c!='q'); printf ("najdluzszy string\n"); puts(wynik);return 0;}przydatne linki : fgets,strlen memcpy 1)pisz prościej 2)stosuj funkcje wbudowane w biblotekę standardową 3)deklaruj własne funkcje jesli ich kod musiałbyś powtarzać więcej niż 2 razy Edytowane 4 Listopada 2005 przez Haquim Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...