====== Programy v C ====== #include #include #include void bubble_sort (char ** x, int velikost) { for (int j = 0; j < velikost; j++) { for (int i = 0; i < velikost - 1; i++) { if (strcmp(x[i], x[i+1]) > 0) { char tmp[20]; strcpy (tmp, x[i]); strcpy (x[i], x[i+1]); strcpy (x[i+1], tmp); } } } } void to_lower_case (char * x) { if (x[0] >= 'A' && x[0] <= 'Z') x[0] ^= 1 << 5; } int main(int argc, char * argv[]) { printf("pocet argumentu: %i\n", argc); printf("prvni argument: %s\n", argv[0]); if (argc > 2) { if (strcmp(argv[1], "-i") == 0) { printf("vstupni soubor: %s\n", argv[2]); } FILE *f = fopen(argv[2], "r"); char slovo[20]; char ** slovnik = malloc(sizeof(char *)); int velikost = 0; while (fscanf (f, "%s", slovo) > 0) { to_lower_case(slovo); slovnik[velikost] = malloc(strlen(slovo)+1); strcpy (slovnik[velikost], slovo); velikost++; slovnik = realloc(slovnik, (velikost+1)*sizeof(char *)); // printf("%s\n", slovo); } fclose(f); bubble_sort (slovnik, velikost); for (int i = 0; i < velikost; i++) printf("%s\n", slovnik[i]); printf("\n"); } return 0; }