Skip to content
Snippets Groups Projects
Commit afb47a1d authored by Peter Gerwinski's avatar Peter Gerwinski
Browse files

Beispielprogramme 28.1.2019

parent 95c0a30e
Branches
No related tags found
No related merge requests found
Showing
with 834 additions and 0 deletions
#include <stdio.h>
#include <stdlib.h>
typedef struct
{
char symbol;
int (*calculate) (int a, int b);
}
operation;
operation *new_operation (void)
{
operation *op = malloc (sizeof (operation));
op->symbol = '?';
op->calculate = NULL;
return op;
}
[...]
int main (void)
{
operation *op[4];
op[0] = new_plus ();
op[1] = new_minus ();
op[2] = new_times ();
op[3] = NULL;
for (int i = 0; op[i]; i++)
printf ("2 %c 3 = %d\n", op[i]->symbol, op[i]->calculate (2, 3));
return 0;
}
#include <stdio.h>
void sort (void **data, int (*compare) (void *x1, void *x2))
{
for (int i = 0; data[i]; i++)
for (int j = i + 1; data[j]; j++)
if (compare (data[i], data[j]) > 0)
{
void *tmp = data[i];
data[i] = data[j];
data[j] = tmp;
}
}
[...]
int main (void)
{
char *strings[] = { "Thomas", "Dora", "Konrad", "Adalbert", "Sophie", NULL };
sort (strings, compare_strings);
for (int i = 0; strings[i]; i++)
printf ("%s\n", strings[i]);
printf ("\n");
int two = 2, ten = 10, zero = 0, three = 3, one = 1;
int *numbers[] = { &two, &ten, &zero, &three, &one, NULL };
sort (numbers, compare_numbers);
for (int i = 0; numbers[i]; i++)
printf ("%d\n", *numbers[i]);
return 0;
}
#include <stdio.h>
#include <stdlib.h>
typedef struct
{
char symbol;
int (*calculate) (int a, int b);
}
operation;
operation *new_operation (void)
{
operation *op = malloc (sizeof (operation));
op->symbol = '?';
op->calculate = NULL;
return op;
}
int main (void)
{
operation *op[4];
op[0] = new_plus ();
op[1] = new_minus ();
op[2] = new_times ();
op[3] = NULL;
for (int i = 0; op[i]; i++)
printf ("2 %c 3 = %d\n", op[i]->symbol, op[i]->calculate (2, 3));
return 0;
}
#include <stdio.h>
#include <stdlib.h>
typedef struct
{
char symbol;
int (*calculate) (int a, int b);
}
operation;
operation *new_operation (void)
{
operation *op = malloc (sizeof (operation));
op->symbol = '?';
op->calculate = NULL;
return op;
}
operation *new_plus (void)
{
return NULL;
}
operation *new_minus (void)
{
return NULL;
}
operation *new_times (void)
{
return NULL;
}
int main (void)
{
operation *op[4];
op[0] = new_plus ();
op[1] = new_minus ();
op[2] = new_times ();
op[3] = NULL;
for (int i = 0; op[i]; i++)
printf ("2 %c 3 = %d\n", op[i]->symbol, op[i]->calculate (2, 3));
return 0;
}
#include <stdio.h>
#include <stdlib.h>
typedef struct
{
char symbol;
int (*calculate) (int a, int b);
}
operation;
operation *new_operation (void)
{
operation *op = malloc (sizeof (operation));
op->symbol = '?';
op->calculate = NULL;
return op;
}
operation *new_plus (void)
{
return new_operation ();
}
operation *new_minus (void)
{
return new_operation ();
}
operation *new_times (void)
{
return new_operation ();
}
int main (void)
{
operation *op[4];
op[0] = new_plus ();
op[1] = new_minus ();
op[2] = new_times ();
op[3] = NULL;
for (int i = 0; op[i]; i++)
printf ("2 %c 3 = %d\n", op[i]->symbol, op[i]->calculate (2, 3));
return 0;
}
#include <stdio.h>
#include <stdlib.h>
typedef struct
{
char symbol;
int (*calculate) (int a, int b);
}
operation;
operation *new_operation (void)
{
operation *op = malloc (sizeof (operation));
op->symbol = '?';
op->calculate = NULL;
return op;
}
int calculate_plus (int a, int b)
{
return a + b;
}
operation *new_plus (void)
{
operation *op = new_operation ();
op->calculate = calculate_plus;
return op;
}
int calculate_minus (int a, int b)
{
return a - b;
}
operation *new_minus (void)
{
operation *op = new_operation ();
op->calculate = calculate_minus;
return op;
}
int calculate_times (int a, int b)
{
return a * b;
}
operation *new_times (void)
{
operation *op = new_operation ();
op->calculate = calculate_times;
return op;
}
int main (void)
{
operation *op[4];
op[0] = new_plus ();
op[1] = new_minus ();
op[2] = new_times ();
op[3] = NULL;
for (int i = 0; op[i]; i++)
printf ("2 %c 3 = %d\n", op[i]->symbol, op[i]->calculate (2, 3));
return 0;
}
#include <stdio.h>
#include <stdlib.h>
typedef struct
{
char symbol;
int (*calculate) (int a, int b);
}
operation;
operation *new_operation (void)
{
operation *op = malloc (sizeof (operation));
op->symbol = '?';
op->calculate = NULL;
return op;
}
int calculate_plus (int a, int b)
{
return a + b;
}
operation *new_plus (void)
{
operation *op = new_operation ();
op->symbol = '+';
op->calculate = calculate_plus;
return op;
}
int calculate_minus (int a, int b)
{
return a - b;
}
operation *new_minus (void)
{
operation *op = new_operation ();
op->calculate = calculate_minus;
op->symbol = '-';
return op;
}
int calculate_times (int a, int b)
{
return a * b;
}
operation *new_times (void)
{
operation *op = new_operation ();
op->calculate = calculate_times;
op->symbol = '*';
return op;
}
int main (void)
{
operation *op[4];
op[0] = new_plus ();
op[1] = new_minus ();
op[2] = new_times ();
op[3] = NULL;
for (int i = 0; op[i]; i++)
printf ("2 %c 3 = %d\n", op[i]->symbol, op[i]->calculate (2, 3));
return 0;
}
#include <stdio.h>
#include <stdlib.h>
typedef struct
{
char symbol;
int (*calculate) (int a, int b);
}
operation;
operation *new_operation (void)
{
operation *op = malloc (sizeof (operation));
op->symbol = '?';
op->calculate = NULL;
return op;
}
int calculate_plus (int a, int b)
{
return a + b;
}
operation *new_plus (void)
{
operation *op = malloc (sizeof (operation));
op->symbol = '+';
op->calculate = calculate_plus;
return op;
}
int calculate_minus (int a, int b)
{
return a - b;
}
operation *new_minus (void)
{
operation *op = malloc (sizeof (operation));
op->symbol = '-';
op->calculate = calculate_minus;
return op;
}
int calculate_times (int a, int b)
{
return a * b;
}
operation *new_times (void)
{
operation *op = malloc (sizeof (operation));
op->symbol = '*';
op->calculate = calculate_times;
return op;
}
int main (void)
{
operation *op[4];
op[0] = new_plus ();
op[1] = new_minus ();
op[2] = new_times ();
op[3] = NULL;
for (int i = 0; op[i]; i++)
printf ("2 %c 3 = %d\n", op[i]->symbol, op[i]->calculate (2, 3));
return 0;
}
#include <stdio.h>
#include <stdlib.h>
typedef struct
{
char symbol;
int (*calculate) (int a, int b);
}
operation;
operation *new_operation (void)
{
operation *op = malloc (sizeof (operation));
op->symbol = '?';
op->calculate = NULL;
return op;
}
int calculate_plus (int a, int b)
{
return a + b;
}
operation *new_plus ()
{
operation *op = malloc (sizeof (operation));
op->symbol = '+';
op->calculate = calculate_plus;
return op;
}
int calculate_minus (int a, int b)
{
return a - b;
}
operation *new_minus ()
{
operation *op = malloc (sizeof (operation));
op->symbol = '-';
op->calculate = calculate_minus;
return op;
}
int calculate_times (int a, int b)
{
return a * b;
}
operation *new_times ()
{
operation *op = malloc (sizeof (operation));
op->symbol = '*';
op->calculate = calculate_times;
return op;
}
int main (void)
{
operation *op[4];
op[0] = new_plus ("Hello, world!");
op[1] = new_minus (42, 137);
op[2] = new_times (3.14159265358979323846, NULL, "Hallo?", op, calculate_times);
op[3] = NULL;
for (int i = 0; op[i]; i++)
printf ("2 %c 3 = %d\n", op[i]->symbol, op[i]->calculate (2, 3));
return 0;
}
#include <stdio.h>
void sort (void **data, int (*compare) (void *x1, void *x2))
{
for (int i = 0; data[i]; i++)
for (int j = i + 1; data[j]; j++)
if (compare (data[i], data[j]) > 0)
{
void *tmp = data[i];
data[i] = data[j];
data[j] = tmp;
}
}
int main (void)
{
char *strings[] = { "Thomas", "Dora", "Konrad", "Adalbert", "Sophie", NULL };
sort (strings, compare_strings);
for (int i = 0; strings[i]; i++)
printf ("%s\n", strings[i]);
printf ("\n");
int two = 2, ten = 10, zero = 0, three = 3, one = 1;
int *numbers[] = { &two, &ten, &zero, &three, &one, NULL };
sort (numbers, compare_numbers);
for (int i = 0; numbers[i]; i++)
printf ("%d\n", *numbers[i]);
return 0;
}
#include <stdio.h>
void sort (void **data, int (*compare) (void *x1, void *x2))
{
for (int i = 0; data[i]; i++)
for (int j = i + 1; data[j]; j++)
if (compare (data[i], data[j]) > 0)
{
void *tmp = data[i];
data[i] = data[j];
data[j] = tmp;
}
}
int compare_strings (void *x1, void *x2)
{
return 42;
}
int compare_numbers (void *x1, void *x2)
{
return 42;
}
int main (void)
{
char *strings[] = { "Thomas", "Dora", "Konrad", "Adalbert", "Sophie", NULL };
sort (strings, compare_strings);
for (int i = 0; strings[i]; i++)
printf ("%s\n", strings[i]);
printf ("\n");
int two = 2, ten = 10, zero = 0, three = 3, one = 1;
int *numbers[] = { &two, &ten, &zero, &three, &one, NULL };
sort (numbers, compare_numbers);
for (int i = 0; numbers[i]; i++)
printf ("%d\n", *numbers[i]);
return 0;
}
#include <stdio.h>
void sort (void **data, int (*compare) (void *x1, void *x2))
{
for (int i = 0; data[i]; i++)
for (int j = i + 1; data[j]; j++)
if (compare (data[i], data[j]) > 0)
{
void *tmp = data[i];
data[i] = data[j];
data[j] = tmp;
}
}
int compare_strings (void *x1, void *x2)
{
return 42;
}
int compare_numbers (void *x1, void *x2)
{
return 42;
}
int main (void)
{
char *strings[] = { "Thomas", "Dora", "Konrad", "Adalbert", "Sophie", NULL };
sort ((void **) strings, compare_strings);
for (int i = 0; strings[i]; i++)
printf ("%s\n", strings[i]);
printf ("\n");
int two = 2, ten = 10, zero = 0, three = 3, one = 1;
int *numbers[] = { &two, &ten, &zero, &three, &one, NULL };
sort ((void **) numbers, compare_numbers);
for (int i = 0; numbers[i]; i++)
printf ("%d\n", *numbers[i]);
return 0;
}
#include <stdio.h>
#include <string.h>
void sort (void **data, int (*compare) (void *x1, void *x2))
{
for (int i = 0; data[i]; i++)
for (int j = i + 1; data[j]; j++)
if (compare (data[i], data[j]) > 0)
{
void *tmp = data[i];
data[i] = data[j];
data[j] = tmp;
}
}
int compare_strings (void *x1, void *x2)
{
return strcmp (x1, x2);
}
int compare_numbers (void *x1, void *x2)
{
return 42;
}
int main (void)
{
char *strings[] = { "Thomas", "Dora", "Konrad", "Adalbert", "Sophie", NULL };
sort ((void **) strings, compare_strings);
for (int i = 0; strings[i]; i++)
printf ("%s\n", strings[i]);
printf ("\n");
int two = 2, ten = 10, zero = 0, three = 3, one = 1;
int *numbers[] = { &two, &ten, &zero, &three, &one, NULL };
sort ((void **) numbers, compare_numbers);
for (int i = 0; numbers[i]; i++)
printf ("%d\n", *numbers[i]);
return 0;
}
#include <stdio.h>
#include <string.h>
void sort (void **data, int (*compare) (void *x1, void *x2))
{
for (int i = 0; data[i]; i++)
for (int j = i + 1; data[j]; j++)
if (compare (data[i], data[j]) > 0)
{
void *tmp = data[i];
data[i] = data[j];
data[j] = tmp;
}
}
int compare_strings (void *x1, void *x2)
{
return strcmp (x1, x2);
}
int compare_numbers (void *x1, void *x2)
{
if (*x2 < *x1)
return 1;
else
return 0;
}
int main (void)
{
char *strings[] = { "Thomas", "Dora", "Konrad", "Adalbert", "Sophie", NULL };
sort ((void **) strings, compare_strings);
for (int i = 0; strings[i]; i++)
printf ("%s\n", strings[i]);
printf ("\n");
int two = 2, ten = 10, zero = 0, three = 3, one = 1;
int *numbers[] = { &two, &ten, &zero, &three, &one, NULL };
sort ((void **) numbers, compare_numbers);
for (int i = 0; numbers[i]; i++)
printf ("%d\n", *numbers[i]);
return 0;
}
#include <stdio.h>
#include <string.h>
void sort (void **data, int (*compare) (void *x1, void *x2))
{
for (int i = 0; data[i]; i++)
for (int j = i + 1; data[j]; j++)
if (compare (data[i], data[j]) > 0)
{
void *tmp = data[i];
data[i] = data[j];
data[j] = tmp;
}
}
int compare_strings (void *x1, void *x2)
{
return strcmp (x1, x2);
}
int compare_numbers (int *x1, int *x2)
{
if (*x2 < *x1)
return 1;
else
return 0;
}
int main (void)
{
char *strings[] = { "Thomas", "Dora", "Konrad", "Adalbert", "Sophie", NULL };
sort ((void **) strings, compare_strings);
for (int i = 0; strings[i]; i++)
printf ("%s\n", strings[i]);
printf ("\n");
int two = 2, ten = 10, zero = 0, three = 3, one = 1;
int *numbers[] = { &two, &ten, &zero, &three, &one, NULL };
sort ((void **) numbers, compare_numbers);
for (int i = 0; numbers[i]; i++)
printf ("%d\n", *numbers[i]);
return 0;
}
#include <stdio.h>
#include <string.h>
void sort (void **data, int (*compare) (void *x1, void *x2))
{
for (int i = 0; data[i]; i++)
for (int j = i + 1; data[j]; j++)
if (compare (data[i], data[j]) > 0)
{
void *tmp = data[i];
data[i] = data[j];
data[j] = tmp;
}
}
int compare_strings (void *x1, void *x2)
{
return strcmp (x1, x2);
}
int compare_numbers (void *x1, void *x2)
{
int *y1 = x1;
int *y2 = x2;
if (*y2 < *y1)
return 1;
else
return 0;
}
int main (void)
{
char *strings[] = { "Thomas", "Dora", "Konrad", "Adalbert", "Sophie", NULL };
sort ((void **) strings, compare_strings);
for (int i = 0; strings[i]; i++)
printf ("%s\n", strings[i]);
printf ("\n");
int two = 2, ten = 10, zero = 0, three = 3, one = 1;
int *numbers[] = { &two, &ten, &zero, &three, &one, NULL };
sort ((void **) numbers, compare_numbers);
for (int i = 0; numbers[i]; i++)
printf ("%d\n", *numbers[i]);
return 0;
}
#include <stdio.h>
#include <string.h>
void sort (void **data, int (*compare) (void *x1, void *x2))
{
for (int i = 0; data[i]; i++)
for (int j = i + 1; data[j]; j++)
if (compare (data[i], data[j]) > 0)
{
void *tmp = data[i];
data[i] = data[j];
data[j] = tmp;
}
}
int compare_strings (void *x1, void *x2)
{
return strcmp (x1, x2);
}
int compare_numbers (void *x1, void *x2)
{
int *y1 = (int *) x1;
int *y2 = (int *) x2;
if (*y2 < *y1)
return 1;
else
return 0;
}
int main (void)
{
char *strings[] = { "Thomas", "Dora", "Konrad", "Adalbert", "Sophie", NULL };
sort ((void **) strings, compare_strings);
for (int i = 0; strings[i]; i++)
printf ("%s\n", strings[i]);
printf ("\n");
int two = 2, ten = 10, zero = 0, three = 3, one = 1;
int *numbers[] = { &two, &ten, &zero, &three, &one, NULL };
sort ((void **) numbers, compare_numbers);
for (int i = 0; numbers[i]; i++)
printf ("%d\n", *numbers[i]);
return 0;
}
#include <stdio.h>
#include <string.h>
void sort (void **data, int (*compare) (void *x1, void *x2))
{
for (int i = 0; data[i]; i++)
for (int j = i + 1; data[j]; j++)
if (compare (data[i], data[j]) > 0)
{
void *tmp = data[i];
data[i] = data[j];
data[j] = tmp;
}
}
int compare_strings (void *x1, void *x2)
{
return strcmp (x1, x2);
}
int compare_numbers (void *x1, void *x2)
{
if (*(int *) x2 < *(int *) x1)
return 1;
else
return 0;
}
int main (void)
{
char *strings[] = { "Thomas", "Dora", "Konrad", "Adalbert", "Sophie", NULL };
sort ((void **) strings, compare_strings);
for (int i = 0; strings[i]; i++)
printf ("%s\n", strings[i]);
printf ("\n");
int two = 2, ten = 10, zero = 0, three = 3, one = 1;
int *numbers[] = { &two, &ten, &zero, &three, &one, NULL };
sort ((void **) numbers, compare_numbers);
for (int i = 0; numbers[i]; i++)
printf ("%d\n", *numbers[i]);
return 0;
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment