Witam!
Musze napisać program sortujący tablice zawierającą wyrazy wprowadzane z klawiatury. Chciałem to zrobić na podstawie poniższego programu, ale tutaj są dwie różne tablice o takiej samej zawartości. Jak zrobić, żeby niejako skolonować tablice???
# include <stdio.h># include <conio.h># include <stdlib.h># include <string.h>int porownaj( const void *a, const void *b){return (strcmp((char *)a,(char *)b) );}int main(void) {int i;char tab[7][10] = {"Ala", "Ola", "Mirek", "Szymon", "Darek", "Wacek", "Ela"};char tab_sort[7][10] = {"Ala", "Ola", "Mirek", "Szymon", "Darek", "Wacek", "Ela"};qsort((void *)tab_sort, 7, sizeof(tab[0]), porownaj);for (i=0; i<7; i++)printf("%s\t %s\n", tab[i], tab_sort[i]);getch();return 0;}
A oto co napisałem, lecz nie działa
# include <stdio.h># include <conio.h># include <stdlib.h># include <string.h>int porownaj( const void *a, const void *b){return (strcmp((char *)a,(char *)b) );}int main(void) {int i,lw;//char *b;char A[7][10];char AB[7][10];clrscr();printf("Podaj liczbe wierszy=");scanf("%d",&lw);fflush(stdin);for(i=1;i<lw+1;i++){printf("\nWpisz tekst %d: ",i);gets(A[i]);}for(i=1;i<lw+1;i++){A[i]=AB[i];}for(i=1;i<lw+1;i++){printf("\nTekst %d: %s",i, A[i]);printf("\nTekst %d: %s",i, AB[i]);}qsort((void *)AB, 7, sizeof(A[1]), porownaj);for (i=1; i<8; i++)printf("%s\t %s\n", A[i], AB[i]);getch();return 0;}
Prosze o pomoc.