jbk11 0 Napisano 19 Stycznia 2015 Udostępnij Napisano 19 Stycznia 2015 (edytowane) Witam.Proszę was o pomoc przy rozwiązaniu mojego problemu. Jestem dopiero na początku swojej nauki języka C i mam do napisania program, w którym wczytuje dane z pliku tekstowego, następnie porównuje wiersze(program ma porównywać litery w odpowiednich kolumnach dwóch wierszy aż do momentu kiedy znajdzie różnice i zdecyduje który wynik ma być wypisany pierwszy). Po sortowaniu wyniki miały być ustawione w kolejności alfabetycznej(mamy wiersze abd jop aab a kolejność po sortowaniu aab abd jop i wszystkich czynnościach wyświetlone w odpowiedniej kolejności). Oto kod:#include <stdio.h>#include <stdlib.h>#include <string.h>#include <stdbool.h>#include <time.h>#include <conio.h>int porownaj(char *a, char *b){int lenght;int lenght1 = strlen(a);int lenght2 = strlen(b);if (lenght1 < lenght2)lenght = lenght1;elselenght = lenght2;int i;for(i=0;i<lenght;i++){if((int) a> (int) b)return 0;elsereturn 1;}if(lenght2<lenght1)return 0;}void wstaw(char *n, char *tabw[], int licznik){int a;int b = -1;int i;for (i = 0; i<licznik; i++){a = porownaj(n, tabw);if (a == 1){b = i;break;}}if (b == -1){b = licznik++;}for (i = licznik; i >= b; --i){strcpy(tabw[i + 1], tabw);}strcpy(tabw, n);}int main(int argc, char *argv[]){char n[256];char *tabw[100];int i;for (i = 0; i < 100; i++){tabw = (char *)malloc(sizeof(char*));}FILE *fp;fp = fopen("", "r");if (fp == NULL)printf("nie otworzono pliku");char c;while((c=fgetc(fp))!=EOF){printf("%c",c);}int licznik = 0;while (!feof(fp) || licznik>100){fgets(n, 256, fp);wstaw(n, tabw, licznik);licznik++;}for (i = 0; i < licznik; i++)printf("%s\n", tabw);return 0;} Proszę o pomoc. //Problem rozwiązany. Można usunąć temat Edytowane 19 Stycznia 2015 przez jbk11 Cytuj Link to post Share on other sites
Naleśniczek 4 Napisano 20 Stycznia 2015 Udostępnij Napisano 20 Stycznia 2015 skoro ma porownywac litere po literze tzn ze chcesz osiagnac sortowanie stringow, napisales tak ze nie wiadomo o co chodzi. Twojego kodu nawet nie chce rozumiec co on robi tu masz fajny przyklad sortowania w c http://www.sanfoundry.com/c-program-sort-names-alphabetical-order/ Cytuj Link to post Share on other sites
Recommended Posts
Dołącz do dyskusji
Możesz dodać zawartość już teraz a zarejestrować się później. Jeśli posiadasz już konto, zaloguj się aby dodać zawartość za jego pomocą.