From ed1219e90ea7220db85f8dff41c65486856a97a4 Mon Sep 17 00:00:00 2001 From: Peter Gerwinski <peter.gerwinski@hs-bochum.de> Date: Mon, 25 Oct 2021 16:40:20 +0200 Subject: [PATCH] Beispiele 25.10.2021 --- 20211025/fhello-1.c | 9 +++++++++ 20211025/fhello-10.c | 19 ++++++++++++++++++ 20211025/fhello-11.c | 19 ++++++++++++++++++ 20211025/fhello-12.c | 20 +++++++++++++++++++ 20211025/fhello-13.c | 20 +++++++++++++++++++ 20211025/fhello-14.c | 13 ++++++++++++ 20211025/fhello-15.c | 18 +++++++++++++++++ 20211025/fhello-16.c | 18 +++++++++++++++++ 20211025/fhello-17.c | 18 +++++++++++++++++ 20211025/fhello-18.c | 19 ++++++++++++++++++ 20211025/fhello-2.c | 8 ++++++++ 20211025/fhello-3.c | 10 ++++++++++ 20211025/fhello-4.c | 11 ++++++++++ 20211025/fhello-5.c | 11 ++++++++++ 20211025/fhello-6.c | 12 +++++++++++ 20211025/fhello-7.c | 13 ++++++++++++ 20211025/fhello-8.c | 15 ++++++++++++++ 20211025/fhello-9.c | 15 ++++++++++++++ 20211025/hp-20211025.pdf | Bin 152193 -> 152295 bytes 20211025/hp-20211025.tex | 2 +- 20211025/pointers-1.c | 9 +++++++++ 20211025/pointers-2.c | 9 +++++++++ 20211025/pointers-3.c | 9 +++++++++ 20211025/pointers-4.c | 9 +++++++++ 20211025/sprintf-1.c | 10 ++++++++++ 20211025/sprintf-2.c | 9 +++++++++ 20211025/sprintf-3.c | 9 +++++++++ 20211025/sprintf-4.c | 9 +++++++++ 20211025/sprintf-5.c | 9 +++++++++ 20211025/strings-1.c | 9 +++++++++ 20211025/strings-10.c | 8 ++++++++ 20211025/strings-11.c | 8 ++++++++ 20211025/strings-12.c | 10 ++++++++++ 20211025/strings-13.c | 10 ++++++++++ 20211025/strings-14.c | 7 +++++++ 20211025/strings-15.c | 7 +++++++ 20211025/strings-16.c | 8 ++++++++ 20211025/strings-17.c | 8 ++++++++ 20211025/strings-2.c | 9 +++++++++ 20211025/strings-3.c | 9 +++++++++ 20211025/strings-4.c | 9 +++++++++ 20211025/strings-5.c | 9 +++++++++ 20211025/strings-6.c | 9 +++++++++ 20211025/strings-7.c | 6 ++++++ 20211025/strings-8.c | 8 ++++++++ 20211025/strings-9.c | 8 ++++++++ 20211025/structs-1.c | 15 ++++++++++++++ 20211025/structs-10.c | 42 +++++++++++++++++++++++++++++++++++++++ 20211025/structs-11.c | 42 +++++++++++++++++++++++++++++++++++++++ 20211025/structs-12.c | 42 +++++++++++++++++++++++++++++++++++++++ 20211025/structs-13.c | 40 +++++++++++++++++++++++++++++++++++++ 20211025/structs-14.c | 40 +++++++++++++++++++++++++++++++++++++ 20211025/structs-15.c | 40 +++++++++++++++++++++++++++++++++++++ 20211025/structs-16.c | 40 +++++++++++++++++++++++++++++++++++++ 20211025/structs-1a.c | 15 ++++++++++++++ 20211025/structs-1b.c | 15 ++++++++++++++ 20211025/structs-1c.c | 15 ++++++++++++++ 20211025/structs-1d.c | 15 ++++++++++++++ 20211025/structs-1e.c | 15 ++++++++++++++ 20211025/structs-2.c | 23 +++++++++++++++++++++ 20211025/structs-3.c | 5 +++++ 20211025/structs-4.c | 27 +++++++++++++++++++++++++ 20211025/structs-5.c | 28 ++++++++++++++++++++++++++ 20211025/structs-6.c | 38 +++++++++++++++++++++++++++++++++++ 20211025/structs-7.c | 38 +++++++++++++++++++++++++++++++++++ 20211025/structs-8.c | 41 ++++++++++++++++++++++++++++++++++++++ 20211025/structs-9.c | 41 ++++++++++++++++++++++++++++++++++++++ 67 files changed, 1110 insertions(+), 1 deletion(-) create mode 100644 20211025/fhello-1.c create mode 100644 20211025/fhello-10.c create mode 100644 20211025/fhello-11.c create mode 100644 20211025/fhello-12.c create mode 100644 20211025/fhello-13.c create mode 100644 20211025/fhello-14.c create mode 100644 20211025/fhello-15.c create mode 100644 20211025/fhello-16.c create mode 100644 20211025/fhello-17.c create mode 100644 20211025/fhello-18.c create mode 100644 20211025/fhello-2.c create mode 100644 20211025/fhello-3.c create mode 100644 20211025/fhello-4.c create mode 100644 20211025/fhello-5.c create mode 100644 20211025/fhello-6.c create mode 100644 20211025/fhello-7.c create mode 100644 20211025/fhello-8.c create mode 100644 20211025/fhello-9.c create mode 100644 20211025/pointers-1.c create mode 100644 20211025/pointers-2.c create mode 100644 20211025/pointers-3.c create mode 100644 20211025/pointers-4.c create mode 100644 20211025/sprintf-1.c create mode 100644 20211025/sprintf-2.c create mode 100644 20211025/sprintf-3.c create mode 100644 20211025/sprintf-4.c create mode 100644 20211025/sprintf-5.c create mode 100644 20211025/strings-1.c create mode 100644 20211025/strings-10.c create mode 100644 20211025/strings-11.c create mode 100644 20211025/strings-12.c create mode 100644 20211025/strings-13.c create mode 100644 20211025/strings-14.c create mode 100644 20211025/strings-15.c create mode 100644 20211025/strings-16.c create mode 100644 20211025/strings-17.c create mode 100644 20211025/strings-2.c create mode 100644 20211025/strings-3.c create mode 100644 20211025/strings-4.c create mode 100644 20211025/strings-5.c create mode 100644 20211025/strings-6.c create mode 100644 20211025/strings-7.c create mode 100644 20211025/strings-8.c create mode 100644 20211025/strings-9.c create mode 100644 20211025/structs-1.c create mode 100644 20211025/structs-10.c create mode 100644 20211025/structs-11.c create mode 100644 20211025/structs-12.c create mode 100644 20211025/structs-13.c create mode 100644 20211025/structs-14.c create mode 100644 20211025/structs-15.c create mode 100644 20211025/structs-16.c create mode 100644 20211025/structs-1a.c create mode 100644 20211025/structs-1b.c create mode 100644 20211025/structs-1c.c create mode 100644 20211025/structs-1d.c create mode 100644 20211025/structs-1e.c create mode 100644 20211025/structs-2.c create mode 100644 20211025/structs-3.c create mode 100644 20211025/structs-4.c create mode 100644 20211025/structs-5.c create mode 100644 20211025/structs-6.c create mode 100644 20211025/structs-7.c create mode 100644 20211025/structs-8.c create mode 100644 20211025/structs-9.c diff --git a/20211025/fhello-1.c b/20211025/fhello-1.c new file mode 100644 index 0000000..6548d9c --- /dev/null +++ b/20211025/fhello-1.c @@ -0,0 +1,9 @@ +#include <stdio.h> + +int main (void) +{ + FILE *f = fopen ("fhello.txt", "w"); + fprintf (f, "Hello, world!\n"); + fclose (f); + return 0; +} diff --git a/20211025/fhello-10.c b/20211025/fhello-10.c new file mode 100644 index 0000000..4598deb --- /dev/null +++ b/20211025/fhello-10.c @@ -0,0 +1,19 @@ +#include <stdio.h> +#include <errno.h> +#include <string.h> + +int main (void) +{ + FILE *f = fopen ("/irgendwo/fhello.txt", "w"); + if (f) + { + fprintf (f, "Hello, world!\n"); + fclose (f); + } + else + { + char *msg = strerror (errno); + fprintf (stderr, "%s\n", msg); + } + return 0; +} diff --git a/20211025/fhello-11.c b/20211025/fhello-11.c new file mode 100644 index 0000000..2719776 --- /dev/null +++ b/20211025/fhello-11.c @@ -0,0 +1,19 @@ +#include <stdio.h> +#include <errno.h> +#include <string.h> + +int main (void) +{ + FILE *f = fopen ("fhello.txt", "w"); + if (f) + { + fprintf (f, "Hello, world!\n"); + fclose (f); + } + else + { + char *msg = strerror (errno); + fprintf (stderr, "%s\n", msg); + } + return 0; +} diff --git a/20211025/fhello-12.c b/20211025/fhello-12.c new file mode 100644 index 0000000..2b389ec --- /dev/null +++ b/20211025/fhello-12.c @@ -0,0 +1,20 @@ +#include <stdio.h> +#include <errno.h> +#include <string.h> + +int main (void) +{ + FILE *f = fopen ("fhello.txt", "w"); + if (f) + { + fprintf (f, "Hello, world!\n"); + fclose (f); + return 0; + } + else + { + char *msg = strerror (errno); + fprintf (stderr, "%s\n", msg); + return 1; + } +} diff --git a/20211025/fhello-13.c b/20211025/fhello-13.c new file mode 100644 index 0000000..d96528e --- /dev/null +++ b/20211025/fhello-13.c @@ -0,0 +1,20 @@ +#include <stdio.h> +#include <errno.h> +#include <string.h> + +int main (void) +{ + FILE *f = fopen ("fhello.txt", "w"); + if (f) + { + fprintf (f, "Hello, world!\n"); + fclose (f); + return 0; + } + else + { + char *msg = strerror (errno); + fprintf (stderr, "%s\n", msg); + return errno; + } +} diff --git a/20211025/fhello-14.c b/20211025/fhello-14.c new file mode 100644 index 0000000..383cb35 --- /dev/null +++ b/20211025/fhello-14.c @@ -0,0 +1,13 @@ +#include <stdio.h> +#include <errno.h> +#include <error.h> + +int main (void) +{ + FILE *f = fopen ("fhello.txt", "w"); + if (!f) + error (errno, errno, "cannot open file"); + fprintf (f, "Hello, world!\n"); + fclose (f); + return 0; +} diff --git a/20211025/fhello-15.c b/20211025/fhello-15.c new file mode 100644 index 0000000..6d48fa4 --- /dev/null +++ b/20211025/fhello-15.c @@ -0,0 +1,18 @@ +#include <stdio.h> +#include <errno.h> +#include <error.h> + +int main (void) +{ + char *filename = "fhello.txt"; + FILE *f = fopen (filename, "w"); + if (!f) + { + char buffer[100]; + sprintf (buffer, "cannot open file \"%s\"", filename); + error (errno, errno, buffer); + } + fprintf (f, "Hello, world!\n"); + fclose (f); + return 0; +} diff --git a/20211025/fhello-16.c b/20211025/fhello-16.c new file mode 100644 index 0000000..c4a15cf --- /dev/null +++ b/20211025/fhello-16.c @@ -0,0 +1,18 @@ +#include <stdio.h> +#include <errno.h> +#include <error.h> + +int main (void) +{ + char *filename = "fhello.txt"; + FILE *f = fopen (filename, "w"); + if (!f) + { + char buffer[5]; + sprintf (buffer, "cannot open file \"%s\"", filename); + error (errno, errno, buffer); + } + fprintf (f, "Hello, world!\n"); + fclose (f); + return 0; +} diff --git a/20211025/fhello-17.c b/20211025/fhello-17.c new file mode 100644 index 0000000..1e669e4 --- /dev/null +++ b/20211025/fhello-17.c @@ -0,0 +1,18 @@ +#include <stdio.h> +#include <errno.h> +#include <error.h> + +int main (void) +{ + char *filename = "fhello.txt"; + FILE *f = fopen (filename, "w"); + if (!f) + { + char buffer[5]; + snprintf (buffer, 5, "cannot open file \"%s\"", filename); + error (errno, errno, buffer); + } + fprintf (f, "Hello, world!\n"); + fclose (f); + return 0; +} diff --git a/20211025/fhello-18.c b/20211025/fhello-18.c new file mode 100644 index 0000000..2415b60 --- /dev/null +++ b/20211025/fhello-18.c @@ -0,0 +1,19 @@ +#include <stdio.h> +#include <errno.h> +#include <error.h> + +int main (void) +{ + char *filename = "fhello.txt"; + FILE *f = fopen (filename, "w"); + if (!f) + { + char buffer[5]; + snprintf (buffer, 5, "cannot open file \"%s\"", filename); + buffer[4] = 0; + error (errno, errno, buffer); + } + fprintf (f, "Hello, world!\n"); + fclose (f); + return 0; +} diff --git a/20211025/fhello-2.c b/20211025/fhello-2.c new file mode 100644 index 0000000..5481819 --- /dev/null +++ b/20211025/fhello-2.c @@ -0,0 +1,8 @@ +#include <stdio.h> + +int main (void) +{ + FILE *f = fopen ("fhello.txt", "w"); + fprintf (f, "Hello, world!\n"); + return 0; +} diff --git a/20211025/fhello-3.c b/20211025/fhello-3.c new file mode 100644 index 0000000..c8d325d --- /dev/null +++ b/20211025/fhello-3.c @@ -0,0 +1,10 @@ +#include <stdio.h> +#include <unistd.h> + +int main (void) +{ + FILE *f = fopen ("fhello.txt", "w"); + fprintf (f, "Hello, world!\n"); + sleep (60); + return 0; +} diff --git a/20211025/fhello-4.c b/20211025/fhello-4.c new file mode 100644 index 0000000..6c59dbb --- /dev/null +++ b/20211025/fhello-4.c @@ -0,0 +1,11 @@ +#include <stdio.h> +#include <unistd.h> + +int main (void) +{ + FILE *f = fopen ("fhello.txt", "w"); + fprintf (f, "Hello, world!\n"); + fclose (f); + sleep (60); + return 0; +} diff --git a/20211025/fhello-5.c b/20211025/fhello-5.c new file mode 100644 index 0000000..e604885 --- /dev/null +++ b/20211025/fhello-5.c @@ -0,0 +1,11 @@ +#include <stdio.h> +#include <unistd.h> + +int main (void) +{ + FILE *f = fopen ("fhello.txt", "w"); + fprintf (f, "Hello, world!\n"); + sleep (60); + fclose (f); + return 0; +} diff --git a/20211025/fhello-6.c b/20211025/fhello-6.c new file mode 100644 index 0000000..cff257e --- /dev/null +++ b/20211025/fhello-6.c @@ -0,0 +1,12 @@ +#include <stdio.h> +#include <unistd.h> + +int main (void) +{ + FILE *f = fopen ("fhello.txt", "w"); + fprintf (f, "Hello, world!\n"); + fflush (f); + sleep (60); + fclose (f); + return 0; +} diff --git a/20211025/fhello-7.c b/20211025/fhello-7.c new file mode 100644 index 0000000..be795a3 --- /dev/null +++ b/20211025/fhello-7.c @@ -0,0 +1,13 @@ +#include <stdio.h> +#include <unistd.h> + +int main (void) +{ + FILE *f = fopen ("fhello.txt", "w"); + if (f) + { + fprintf (f, "Hello, world!\n"); + fclose (f); + } + return 0; +} diff --git a/20211025/fhello-8.c b/20211025/fhello-8.c new file mode 100644 index 0000000..529ddff --- /dev/null +++ b/20211025/fhello-8.c @@ -0,0 +1,15 @@ +#include <stdio.h> +#include <errno.h> + +int main (void) +{ + FILE *f = fopen ("fhello.txt", "w"); + if (f) + { + fprintf (f, "Hello, world!\n"); + fclose (f); + } + else + fprintf (stderr, "error #%d\n", errno); + return 0; +} diff --git a/20211025/fhello-9.c b/20211025/fhello-9.c new file mode 100644 index 0000000..7242a48 --- /dev/null +++ b/20211025/fhello-9.c @@ -0,0 +1,15 @@ +#include <stdio.h> +#include <errno.h> + +int main (void) +{ + FILE *f = fopen ("/irgendwo/fhello.txt", "w"); + if (f) + { + fprintf (f, "Hello, world!\n"); + fclose (f); + } + else + fprintf (stderr, "error #%d\n", errno); + return 0; +} diff --git a/20211025/hp-20211025.pdf b/20211025/hp-20211025.pdf index b99f2f6716dff85543d90e9dde0917cb7688e95d..7c5e6c87aa135dd8447b70c087e7ebc406f5bb98 100644 GIT binary patch delta 14554 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 delta 14611 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 diff --git a/20211025/hp-20211025.tex b/20211025/hp-20211025.tex index e14ab65..2f8fae5 100644 --- a/20211025/hp-20211025.tex +++ b/20211025/hp-20211025.tex @@ -688,7 +688,7 @@ { FILE *f = fopen ("fhello.txt", "w"); if (!f) - error (1, errno, "cannot open file"); + error (errno, errno, "cannot open file"); fprintf (f, "Hello, world!\n"); fclose (f); return 0; diff --git a/20211025/pointers-1.c b/20211025/pointers-1.c new file mode 100644 index 0000000..6e19ec4 --- /dev/null +++ b/20211025/pointers-1.c @@ -0,0 +1,9 @@ +#include <stdio.h> + +int main (void) +{ + int prime[] = { 2, 3, 5, 7, 11, 0 }; + for (int *p = prime; *p; p++) + printf ("%d\n", *p); + return 0; +} diff --git a/20211025/pointers-2.c b/20211025/pointers-2.c new file mode 100644 index 0000000..6c38a2a --- /dev/null +++ b/20211025/pointers-2.c @@ -0,0 +1,9 @@ +#include <stdio.h> + +int main (void) +{ + int prime[] = { 2, 3, 5, 7, 11, ',' }; + for (int *p = prime; *p != ','; p++) + printf ("%d\n", *p); + return 0; +} diff --git a/20211025/pointers-3.c b/20211025/pointers-3.c new file mode 100644 index 0000000..811af51 --- /dev/null +++ b/20211025/pointers-3.c @@ -0,0 +1,9 @@ +#include <stdio.h> + +int main (void) +{ + int prime[] = { 2, 3, 44, 5, 7, 11, ',' }; + for (int *p = prime; *p != ','; p++) + printf ("%d\n", *p); + return 0; +} diff --git a/20211025/pointers-4.c b/20211025/pointers-4.c new file mode 100644 index 0000000..811af51 --- /dev/null +++ b/20211025/pointers-4.c @@ -0,0 +1,9 @@ +#include <stdio.h> + +int main (void) +{ + int prime[] = { 2, 3, 44, 5, 7, 11, ',' }; + for (int *p = prime; *p != ','; p++) + printf ("%d\n", *p); + return 0; +} diff --git a/20211025/sprintf-1.c b/20211025/sprintf-1.c new file mode 100644 index 0000000..a6aece3 --- /dev/null +++ b/20211025/sprintf-1.c @@ -0,0 +1,10 @@ +#include <stdio.h> + +int main (void) +{ + char buffer[100]; + snprintf (buffer, 100, "Die Antwort lautet: %d", 42); + buffer[99] = 0; + printf ("%s\n", buffer); + return 0; +} diff --git a/20211025/sprintf-2.c b/20211025/sprintf-2.c new file mode 100644 index 0000000..56857f0 --- /dev/null +++ b/20211025/sprintf-2.c @@ -0,0 +1,9 @@ +#include <stdio.h> + +int main (void) +{ + char buffer[10]; + sprintf (buffer, "Die Antwort lautet: %d", 42); + printf ("%s\n", buffer); + return 0; +} diff --git a/20211025/sprintf-3.c b/20211025/sprintf-3.c new file mode 100644 index 0000000..08ef25c --- /dev/null +++ b/20211025/sprintf-3.c @@ -0,0 +1,9 @@ +#include <stdio.h> + +int main (void) +{ + char buffer[10]; + snprintf (buffer, 10, "Die Antwort lautet: %d", 42); + printf ("%s\n", buffer); + return 0; +} diff --git a/20211025/sprintf-4.c b/20211025/sprintf-4.c new file mode 100644 index 0000000..1d20ed3 --- /dev/null +++ b/20211025/sprintf-4.c @@ -0,0 +1,9 @@ +#include <stdio.h> + +int main (void) +{ + char buffer[10]; + int written = snprintf (buffer, 10, "Die Antwort lautet: %d", 42); + printf ("%s (%d characters written)\n", buffer, written); + return 0; +} diff --git a/20211025/sprintf-5.c b/20211025/sprintf-5.c new file mode 100644 index 0000000..b77ad31 --- /dev/null +++ b/20211025/sprintf-5.c @@ -0,0 +1,9 @@ +#include <stdio.h> + +int main (void) +{ + char buffer[10]; + int written = snprintf (buffer, 10, "Antw: %s", "zweiundvierzig"); + printf ("%s (%d characters written)\n", buffer, written); + return 0; +} diff --git a/20211025/strings-1.c b/20211025/strings-1.c new file mode 100644 index 0000000..81bc3cd --- /dev/null +++ b/20211025/strings-1.c @@ -0,0 +1,9 @@ +#include <stdio.h> + +int main (void) +{ + char hello[] = "Hello, world!\n"; + for (char *p = hello; *p; p++) + printf ("%d", *p); + return 0; +} diff --git a/20211025/strings-10.c b/20211025/strings-10.c new file mode 100644 index 0000000..c1cf30a --- /dev/null +++ b/20211025/strings-10.c @@ -0,0 +1,8 @@ +#include <stdio.h> + +int main (void) +{ + char *hello = { 72, 101, 108, 108, 111, 10, 0 }; + printf ("%s", hello); + return 0; +} diff --git a/20211025/strings-11.c b/20211025/strings-11.c new file mode 100644 index 0000000..c75e848 --- /dev/null +++ b/20211025/strings-11.c @@ -0,0 +1,8 @@ +#include <stdio.h> + +int main (void) +{ + char *hello = "Hello, world!\n"; + printf ("%s", hello); + return 0; +} diff --git a/20211025/strings-12.c b/20211025/strings-12.c new file mode 100644 index 0000000..aa6c6a2 --- /dev/null +++ b/20211025/strings-12.c @@ -0,0 +1,10 @@ +#include <stdio.h> + +int main (void) +{ + char *hello = "Hello.\n"; + printf ("%s", hello); + hello[1] = 'a'; + printf ("%s", hello); + return 0; +} diff --git a/20211025/strings-13.c b/20211025/strings-13.c new file mode 100644 index 0000000..175c903 --- /dev/null +++ b/20211025/strings-13.c @@ -0,0 +1,10 @@ +#include <stdio.h> + +int main (void) +{ + char hello[] = "Hello.\n"; + printf ("%s", hello); + hello[1] = 'a'; + printf ("%s", hello); + return 0; +} diff --git a/20211025/strings-14.c b/20211025/strings-14.c new file mode 100644 index 0000000..94871b3 --- /dev/null +++ b/20211025/strings-14.c @@ -0,0 +1,7 @@ +#include <stdio.h> + +int main (void) +{ + printf ("\x4a\x5f\x4b\x75\x6e\x69\x63\x6b\x65\n"); + return 0; +} diff --git a/20211025/strings-15.c b/20211025/strings-15.c new file mode 100644 index 0000000..cd8371a --- /dev/null +++ b/20211025/strings-15.c @@ -0,0 +1,7 @@ +#include <stdio.h> + +int main (void) +{ + printf ("\x4a\x5f\x4b\x75\x6e\x69\x63\x6b\x65\x0a"); + return 0; +} diff --git a/20211025/strings-16.c b/20211025/strings-16.c new file mode 100644 index 0000000..29dd1cb --- /dev/null +++ b/20211025/strings-16.c @@ -0,0 +1,8 @@ +#include <stdio.h> + +int main (void) +{ + char name[] = { 0x74, 0x65, 0x62, 0x65, 0x72, 0x6c, 0x69, 0x6e, 0x67, 0 }; + printf ("%s\n", name); + return 0; +} diff --git a/20211025/strings-17.c b/20211025/strings-17.c new file mode 100644 index 0000000..6506b08 --- /dev/null +++ b/20211025/strings-17.c @@ -0,0 +1,8 @@ +#include <stdio.h> + +int main (void) +{ + char *name = { 0x74, 0x65, 0x62, 0x65, 0x72, 0x6c, 0x69, 0x6e, 0x67, 0 }; + printf ("%s\n", name); + return 0; +} diff --git a/20211025/strings-2.c b/20211025/strings-2.c new file mode 100644 index 0000000..4df3297 --- /dev/null +++ b/20211025/strings-2.c @@ -0,0 +1,9 @@ +#include <stdio.h> + +int main (void) +{ + char hello[] = "Hello, world!\n"; + for (char *p = hello; *p; p++) + printf ("%c", *p); + return 0; +} diff --git a/20211025/strings-3.c b/20211025/strings-3.c new file mode 100644 index 0000000..0e62e1e --- /dev/null +++ b/20211025/strings-3.c @@ -0,0 +1,9 @@ +#include <stdio.h> + +int main (void) +{ + char hello[] = "Hello, world!\n"; + for (char *p = hello; *p; p++) + printf ("%x", *p); + return 0; +} diff --git a/20211025/strings-4.c b/20211025/strings-4.c new file mode 100644 index 0000000..ca99a88 --- /dev/null +++ b/20211025/strings-4.c @@ -0,0 +1,9 @@ +#include <stdio.h> + +int main (void) +{ + char hello[] = "Hello, world!\n"; + for (char *p = hello; *p; p++) + printf ("%02x", *p); + return 0; +} diff --git a/20211025/strings-5.c b/20211025/strings-5.c new file mode 100644 index 0000000..12f4867 --- /dev/null +++ b/20211025/strings-5.c @@ -0,0 +1,9 @@ +#include <stdio.h> + +int main (void) +{ + char hello[] = { 72, 101, 108, 108, 111, 0 }; + for (char *p = hello; *p; p++) + printf ("%02x", *p); + return 0; +} diff --git a/20211025/strings-6.c b/20211025/strings-6.c new file mode 100644 index 0000000..d77f7e7 --- /dev/null +++ b/20211025/strings-6.c @@ -0,0 +1,9 @@ +#include <stdio.h> + +int main (void) +{ + char hello[] = { 72, 101, 108, 108, 111, 10, 0 }; + for (char *p = hello; *p; p++) + printf ("%c", *p); + return 0; +} diff --git a/20211025/strings-7.c b/20211025/strings-7.c new file mode 100644 index 0000000..76edbc5 --- /dev/null +++ b/20211025/strings-7.c @@ -0,0 +1,6 @@ +#include <stdio.h> + +int main (void) +{ + printf ("2 hoch 6 = %d\n", '@'); +} diff --git a/20211025/strings-8.c b/20211025/strings-8.c new file mode 100644 index 0000000..68227c2 --- /dev/null +++ b/20211025/strings-8.c @@ -0,0 +1,8 @@ +#include <stdio.h> + +int main (void) +{ + char hello[] = "Hello, world!\n"; + printf ("%s", hello); + return 0; +} diff --git a/20211025/strings-9.c b/20211025/strings-9.c new file mode 100644 index 0000000..9b559e5 --- /dev/null +++ b/20211025/strings-9.c @@ -0,0 +1,8 @@ +#include <stdio.h> + +int main (void) +{ + char hello[] = { 72, 101, 108, 108, 111, 10, 0 }; + printf ("%s", hello); + return 0; +} diff --git a/20211025/structs-1.c b/20211025/structs-1.c new file mode 100644 index 0000000..b83293d --- /dev/null +++ b/20211025/structs-1.c @@ -0,0 +1,15 @@ +#include <stdio.h> + +typedef struct +{ + char day, month; + int year; +} +date; + +int main (void) +{ + date today = { 18, 10, 2021 }; + printf ("%d.%d.%d\n", today.day, today.month, today.year); + return 0; +} diff --git a/20211025/structs-10.c b/20211025/structs-10.c new file mode 100644 index 0000000..a8f63e9 --- /dev/null +++ b/20211025/structs-10.c @@ -0,0 +1,42 @@ +#include <stdio.h> + +typedef struct +{ + char day, month; + int year; +} +date; + +void set_date (date *d) +{ + d->day = 18; + d->month = 10; + d->year = 2021; +} + +void print_date (date *d) +{ + printf ("%d.%d.%d\n", d->day, d->month, d->year); +} + +void scan_date (date *d) +{ + printf ("Bitte das Jahr eingeben (vierstellig): "); + scanf ("%d", &d->year); + int tmp; + printf ("Bitte den Monat eingeben (1 bis 12): "); + scanf ("%d", &tmp); + d->month = tmp; + printf ("Bitte den Tag eingeben (1 bis 31): "); + scanf ("%d", &tmp); + d->day = tmp; + print_date (&today); +} + +int main (void) +{ + date today; + scan_date (&today); + print_date (&today); + return 0; +} diff --git a/20211025/structs-11.c b/20211025/structs-11.c new file mode 100644 index 0000000..39adf5d --- /dev/null +++ b/20211025/structs-11.c @@ -0,0 +1,42 @@ +#include <stdio.h> + +typedef struct +{ + char day, month; + int year; +} +date; + +void set_date (date *d) +{ + d->day = 18; + d->month = 10; + d->year = 2021; +} + +void print_date (date *d) +{ + printf ("%d.%d.%d\n", d->day, d->month, d->year); +} + +void scan_date (date *d) +{ + printf ("Bitte das Jahr eingeben (vierstellig): "); + scanf ("%d", &d->year); + int tmp; + printf ("Bitte den Monat eingeben (1 bis 12): "); + scanf ("%d", &tmp); + d->month = tmp; + printf ("Bitte den Tag eingeben (1 bis 31): "); + scanf ("%d", &tmp); + d->day = tmp; + print_date (&d); +} + +int main (void) +{ + date today; + scan_date (&today); + print_date (&today); + return 0; +} diff --git a/20211025/structs-12.c b/20211025/structs-12.c new file mode 100644 index 0000000..cb560f2 --- /dev/null +++ b/20211025/structs-12.c @@ -0,0 +1,42 @@ +#include <stdio.h> + +typedef struct +{ + char day, month; + int year; +} +date; + +void set_date (date *d) +{ + d->day = 18; + d->month = 10; + d->year = 2021; +} + +void print_date (date *d) +{ + printf ("%d.%d.%d\n", d->day, d->month, d->year); +} + +void scan_date (date *d) +{ + printf ("Bitte das Jahr eingeben (vierstellig): "); + scanf ("%d", &d->year); + int tmp; + printf ("Bitte den Monat eingeben (1 bis 12): "); + scanf ("%d", &tmp); + d->month = tmp; + printf ("Bitte den Tag eingeben (1 bis 31): "); + scanf ("%d", &tmp); + d->day = tmp; + print_date (d); +} + +int main (void) +{ + date today; + scan_date (&today); + print_date (&today); + return 0; +} diff --git a/20211025/structs-13.c b/20211025/structs-13.c new file mode 100644 index 0000000..3f98442 --- /dev/null +++ b/20211025/structs-13.c @@ -0,0 +1,40 @@ +#include <stdio.h> + +struct date +{ + char day, month; + int year; +}; + +void set_date (date *d) +{ + d->day = 18; + d->month = 10; + d->year = 2021; +} + +void print_date (date *d) +{ + printf ("%d.%d.%d\n", d->day, d->month, d->year); +} + +void scan_date (date *d) +{ + printf ("Bitte das Jahr eingeben (vierstellig): "); + scanf ("%d", &d->year); + int tmp; + printf ("Bitte den Monat eingeben (1 bis 12): "); + scanf ("%d", &tmp); + d->month = tmp; + printf ("Bitte den Tag eingeben (1 bis 31): "); + scanf ("%d", &tmp); + d->day = tmp; +} + +int main (void) +{ + date today; + scan_date (&today); + print_date (&today); + return 0; +} diff --git a/20211025/structs-14.c b/20211025/structs-14.c new file mode 100644 index 0000000..2dafc78 --- /dev/null +++ b/20211025/structs-14.c @@ -0,0 +1,40 @@ +#include <stdio.h> + +struct date +{ + char day, month; + int year; +}; + +void set_date (struct date *d) +{ + d->day = 18; + d->month = 10; + d->year = 2021; +} + +void print_date (struct date *d) +{ + printf ("%d.%d.%d\n", d->day, d->month, d->year); +} + +void scan_date (struct date *d) +{ + printf ("Bitte das Jahr eingeben (vierstellig): "); + scanf ("%d", &d->year); + int tmp; + printf ("Bitte den Monat eingeben (1 bis 12): "); + scanf ("%d", &tmp); + d->month = tmp; + printf ("Bitte den Tag eingeben (1 bis 31): "); + scanf ("%d", &tmp); + d->day = tmp; +} + +int main (void) +{ + struct date today; + scan_date (&today); + print_date (&today); + return 0; +} diff --git a/20211025/structs-15.c b/20211025/structs-15.c new file mode 100644 index 0000000..c7317c6 --- /dev/null +++ b/20211025/structs-15.c @@ -0,0 +1,40 @@ +#include <stdio.h> + +typedef struct +{ + char day, month; + int year; +} +date; + +void set_date (date *d) +{ + d->day = 18; + d->month = 10; + d->year = 2021; +} + +void scan_date (date *d) +{ + printf ("Bitte das Jahr eingeben (vierstellig): "); + scanf ("%d", &d->year); + print_date (d); + printf ("Bitte den Monat eingeben (1 bis 12): "); + scanf ("%d", &d->month); + print_date (d); + printf ("Bitte den Tag eingeben (1 bis 31): "); + scanf ("%d", &d->day); + print_date (d); +} + +void print_date (date *d) +{ + printf ("%d.%d.%d\n", d->day, d->month, d->year); +} + +int main (void) +{ + date today; + scan_date (&today); + return 0; +} diff --git a/20211025/structs-16.c b/20211025/structs-16.c new file mode 100644 index 0000000..2bd21f6 --- /dev/null +++ b/20211025/structs-16.c @@ -0,0 +1,40 @@ +#include <stdio.h> + +typedef struct +{ + char day, month; + int year; +} +date; + +void set_date (date *d) +{ + d->day = 18; + d->month = 10; + d->year = 2021; +} + +void scan_date (date *d) +{ + printf ("Bitte den Tag eingeben (1 bis 31): "); + scanf ("%d", &d->day); + print_date (d); + printf ("Bitte den Monat eingeben (1 bis 12): "); + scanf ("%d", &d->month); + print_date (d); + printf ("Bitte das Jahr eingeben (vierstellig): "); + scanf ("%d", &d->year); + print_date (d); +} + +void print_date (date *d) +{ + printf ("%d.%d.%d\n", d->day, d->month, d->year); +} + +int main (void) +{ + date today; + scan_date (&today); + return 0; +} diff --git a/20211025/structs-1a.c b/20211025/structs-1a.c new file mode 100644 index 0000000..7eaba77 --- /dev/null +++ b/20211025/structs-1a.c @@ -0,0 +1,15 @@ +#include <stdio.h> + +typedef struct +{ + char day, month; + int year; +} +date; + +int main (void) +{ + date today = { ' ' - 7, '\n', 2021 }; + printf ("%d.%d.%d\n", today.day, today.month, today.year); + return 0; +} diff --git a/20211025/structs-1b.c b/20211025/structs-1b.c new file mode 100644 index 0000000..1499741 --- /dev/null +++ b/20211025/structs-1b.c @@ -0,0 +1,15 @@ +#include <stdio.h> + +typedef struct +{ + char day, month; + int year; +} +date; + +int main (void) +{ + date today = { '1', '2', 2021 }; + printf ("%d.%d.%d\n", today.day, today.month, today.year); + return 0; +} diff --git a/20211025/structs-1c.c b/20211025/structs-1c.c new file mode 100644 index 0000000..eaa8a3d --- /dev/null +++ b/20211025/structs-1c.c @@ -0,0 +1,15 @@ +#include <stdio.h> + +typedef struct +{ + char day, month; + int year; +} +date; + +int main (void) +{ + date today = { 25, 10, 2021 }; + printf ("%c.%c.%d\n", today.day, today.month, today.year); + return 0; +} diff --git a/20211025/structs-1d.c b/20211025/structs-1d.c new file mode 100644 index 0000000..9e35a25 --- /dev/null +++ b/20211025/structs-1d.c @@ -0,0 +1,15 @@ +#include <stdio.h> + +typedef struct +{ + char day, month; + int year; +} +date; + +int main (void) +{ + date today = { 25, 10, 2021 }; + printf ("%c.%c.%c\n", today.day, today.month, today.year); + return 0; +} diff --git a/20211025/structs-1e.c b/20211025/structs-1e.c new file mode 100644 index 0000000..cd7a312 --- /dev/null +++ b/20211025/structs-1e.c @@ -0,0 +1,15 @@ +#include <stdio.h> + +typedef struct +{ + char day, month; + int year; +} +date; + +int main (void) +{ + date today = { 25, 10, 2090 }; + printf ("%c.%c.%c\n", today.day, today.month, today.year); + return 0; +} diff --git a/20211025/structs-2.c b/20211025/structs-2.c new file mode 100644 index 0000000..1a8ba6a --- /dev/null +++ b/20211025/structs-2.c @@ -0,0 +1,23 @@ +#include <stdio.h> + +typedef struct +{ + char day, month; + int year; +} +date; + +void set_date (date *d) +{ + (*d).day = 18; + (*d).month = 10; + (*d).year = 2021; +} + +int main (void) +{ + date today; + set_date (&today); + printf ("%d.%d.%d\n", today.day, today.month, today.year); + return 0; +} diff --git a/20211025/structs-3.c b/20211025/structs-3.c new file mode 100644 index 0000000..1c05146 --- /dev/null +++ b/20211025/structs-3.c @@ -0,0 +1,5 @@ +#include <stdio.h> +typedef struct { char day, month; int year; } date; void set_date (date *d) { +(*d).day = 18; (*d).month = 10; (*d).year = 2021; } int main (void) { date +today; set_date (&today); printf ("%d.%d.%d\n", today.day, today.month, +today.year); return 0; } diff --git a/20211025/structs-4.c b/20211025/structs-4.c new file mode 100644 index 0000000..5d41fe5 --- /dev/null +++ b/20211025/structs-4.c @@ -0,0 +1,27 @@ +#include <stdio.h> + +typedef struct +{ + char day, month; + int year; +} date; + +void set_date (date *d) +{ + (*d).day = 18; + (*d).month = 10; + (*d).year = 2021; +} + +void print_date (date *d) +{ + printf ("%d.%d.%d\n", (*d).day, (*d).month, (*d).year); +} + +int main (void) +{ + date today; + set_date (&today); + print_date (&today); + return 0; +} diff --git a/20211025/structs-5.c b/20211025/structs-5.c new file mode 100644 index 0000000..1cdf06f --- /dev/null +++ b/20211025/structs-5.c @@ -0,0 +1,28 @@ +#include <stdio.h> + +typedef struct +{ + char day, month; + int year; +} +date; + +void set_date (date *d) +{ + d->day = 18; + d->month = 10; + d->year = 2021; +} + +void print_date (date *d) +{ + printf ("%d.%d.%d\n", d->day, d->month, d->year); +} + +int main (void) +{ + date today; + set_date (&today); + print_date (&today); + return 0; +} diff --git a/20211025/structs-6.c b/20211025/structs-6.c new file mode 100644 index 0000000..19c599e --- /dev/null +++ b/20211025/structs-6.c @@ -0,0 +1,38 @@ +#include <stdio.h> + +typedef struct +{ + char day, month; + int year; +} +date; + +void set_date (date *d) +{ + d->day = 18; + d->month = 10; + d->year = 2021; +} + +void scan_date (date *d) +{ + printf ("Bitte das Jahr eingeben (vierstellig): "); + scanf ("%d", &d->year); + printf ("Bitte den Monat eingeben (1 bis 12): "); + scanf ("%d", &d->month); + printf ("Bitte den Tag eingeben (1 bis 31): "); + scanf ("%d", &d->day); +} + +void print_date (date *d) +{ + printf ("%d.%d.%d\n", d->day, d->month, d->year); +} + +int main (void) +{ + date today; + scan_date (&today); + print_date (&today); + return 0; +} diff --git a/20211025/structs-7.c b/20211025/structs-7.c new file mode 100644 index 0000000..608af06 --- /dev/null +++ b/20211025/structs-7.c @@ -0,0 +1,38 @@ +#include <stdio.h> + +typedef struct +{ + char day, month; + int year; +} +date; + +void set_date (date *d) +{ + d->day = 18; + d->month = 10; + d->year = 2021; +} + +void scan_date (date *d) +{ + printf ("Bitte das Jahr eingeben (vierstellig): "); + scanf ("%d", &d->year); + printf ("Bitte den Monat eingeben (1 bis 12): "); + scanf ("%hhd", &d->month); + printf ("Bitte den Tag eingeben (1 bis 31): "); + scanf ("%hhd", &d->day); +} + +void print_date (date *d) +{ + printf ("%d.%d.%d\n", d->day, d->month, d->year); +} + +int main (void) +{ + date today; + scan_date (&today); + print_date (&today); + return 0; +} diff --git a/20211025/structs-8.c b/20211025/structs-8.c new file mode 100644 index 0000000..cb07d76 --- /dev/null +++ b/20211025/structs-8.c @@ -0,0 +1,41 @@ +#include <stdio.h> + +typedef struct +{ + char day, month; + int year; +} +date; + +void set_date (date *d) +{ + d->day = 18; + d->month = 10; + d->year = 2021; +} + +void scan_date (date *d) +{ + printf ("Bitte das Jahr eingeben (vierstellig): "); + scanf ("%d", &d->year); + int tmp; + printf ("Bitte den Monat eingeben (1 bis 12): "); + scanf ("%d", &tmp); + d->month = tmp; + printf ("Bitte den Tag eingeben (1 bis 31): "); + scanf ("%d", &tmp); + d->day = tmp; +} + +void print_date (date *d) +{ + printf ("%d.%d.%d\n", d->day, d->month, d->year); +} + +int main (void) +{ + date today; + scan_date (&today); + print_date (&today); + return 0; +} diff --git a/20211025/structs-9.c b/20211025/structs-9.c new file mode 100644 index 0000000..65ba4e1 --- /dev/null +++ b/20211025/structs-9.c @@ -0,0 +1,41 @@ +#include <stdio.h> + +typedef struct +{ + char day, month; + int year; +} +date; + +void set_date (date *d) +{ + d->day = 18; + d->month = 10; + d->year = 2021; +} + +void scan_date (date *d) +{ + printf ("Bitte das Jahr eingeben (vierstellig): "); + scanf ("%hhd", &d->year); + int tmp; + printf ("Bitte den Monat eingeben (1 bis 12): "); + scanf ("%d", &tmp); + d->month = tmp; + printf ("Bitte den Tag eingeben (1 bis 31): "); + scanf ("%d", &tmp); + d->day = tmp; +} + +void print_date (date *d) +{ + printf ("%d.%d.%d\n", d->day, d->month, d->year); +} + +int main (void) +{ + date today; + scan_date (&today); + print_date (&today); + return 0; +} -- GitLab