/* idee, een programma dat een lijst van strings krijgt, en ze dan sorteert op alphabetische volgorde, idealiter ook met hele nummbers if relevant (dus niet alleen individuele digits) split into strings and numbers okay dit werkt nu omzetten naar strings */ #include #include #include #include #include #define WORDS 16 #define WORDLENGTH 64 /* return 1 if word1 < word 2*/ int compareword(char word1[], char word2[]) { for (int i = 0; i < WORDLENGTH; i++) { if (word1[i] < word2[i]) { printf("%s is larger than %s\n", word1, word2); return 1; } else { return 0; } } return 0; } /* eerst gewone bubblesort weer doen */ int mybubblesort(char inputarr[WORDS][WORDLENGTH]) { for (int i = 0; i < WORDS - 1; i++) { // voor elk woord for (int j = 0; j < WORDS - 1; j++) { // ga langs elk woord if (compareword(inputarr[j], inputarr[j + 1])) { // als huidig nummer groter is // swap hem dan char temp[64]; strcpy(temp, inputarr[j+1]); strcpy(inputarr[j+1], inputarr[j]); strcpy(inputarr[j], temp); } } } for (int i = 0; i < WORDS - 1; i++) { if (inputarr[i][0] > 0) { printf("num:%i, %s\n", i, inputarr[i]); } //puts(inputarr[i]); } return 0; } int main() { char mytest[16][64] = {"pear", "watermelon", "apple", "banana", "cantaloupe", "Elephant", "Zebra"}; srand(time(NULL)); mybubblesort(mytest); return 0; }