700.015 (24S) Programming in C

Sommersemester 2024

Anmeldefrist abgelaufen.

Erster Termin der LV
11.03.2024 11:45 - 13:15 HS 2 On Campus
... keine weiteren Termine bekannt

Überblick

Lehrende/r
LV-Titel englisch Programming in C
LV-Art Vorlesung-Kurs (prüfungsimmanente LV )
LV-Modell Präsenzlehrveranstaltung
Semesterstunde/n 2.0
ECTS-Anrechnungspunkte 2.0
Anmeldungen 52 (30 max.)
Organisationseinheit
Unterrichtssprache Englisch
LV-Beginn 11.03.2024
eLearning zum Moodle-Kurs

Zeit und Ort

Liste der Termine wird geladen...

LV-Beschreibung

Intendierte Lernergebnisse

The students should learn how to write small programs in C. We will also have a particular focus on writing efficient code. Furthermore, we will discuss potential pitfalls that can lead to extensive debugging if the programmer is not aware of it.

The class is designed to be helpful for both beginners, who want to get started with C, and for advanced C programmers who want to improve coding style and avoid common mistakes.

Lehrmethodik

 Each class consists of a lecture part with slides and a discussion session. In the latter, students present solutions of tasks and we jointly evaluate and optimize the code.

Inhalt/e

The topics covered in the course will include:                                                                                                                  

  • Introduction to the syntax of C
  • Types, operators and expressions
  • Control structures
  • Functions and program structure
  • Memory addressing and pointers
  • Arrays and structures
  • Memory management
  • Input and output

Erwartete Vorkenntnisse

Students should have some basic knowledge in programming in any other language, such as JAVA. They are expected to be able to write a few lines of code, know how to use loops and work with functions.

Curriculare Anmeldevoraussetzungen

Students have to have passed the class "ESOP" or possess equivalent knowledge or basic programming skills.

Literatur

Book:

The C Programming Language (2nd Edition)
 Brian Kernighan and Dennis Ritchie

C – Einführung und professionelle Anwendung (2nd Edition)
 Peter Prinz and Ulla Kirch-Prinz, mitp 2007

Prüfungsinformationen

Im Fall von online durchgeführten Prüfungen sind die Standards zu beachten, die die technischen Geräte der Studierenden erfüllen müssen, um an diesen Prüfungen teilnehmen zu können.

Prüfungsmethode/n

The students will be evaluated based on the weekly presentations of their solutions of programming tasks AND a written final exam.

Prüfungsinhalt/e

The exam will be based on the content of the lecture = slides presented in the lecure + programming tasks.

Beurteilungskriterien/-maßstäbe

Evaluation of students is based on their ability to produce C-code that is well-structured and optimized in terms of runtime. Furthermore, some fundamental knowledge about the theoretical background is expected by the end of the semester.

Beurteilungsschema

Note Benotungsschema

Position im Curriculum

  • Bachelorstudium Angewandte Informatik (SKZ: 511, Version: 19W.2)
    • Fach: Freie Wahlfächer (Freifach)
      • 11 Freie Wahlfächer ( 0.0h XX / 9.0 ECTS)
        • 700.015 Programming in C (2.0h VC / 2.0 ECTS)
          Absolvierung im 1., 2., 3., 4., 5., 6. Semester empfohlen
  • Bachelorstudium Angewandte Informatik (SKZ: 511, Version: 17W.1)
    • Fach: Freie Wahlfächer (Freifach)
      • Freie Wahlfächer ( 0.0h XX / 9.0 ECTS)
        • 700.015 Programming in C (2.0h VC / 2.0 ECTS)
  • Bachelorstudium Informationstechnik (SKZ: 289, Version: 22W.1)
    • Fach: Informationstechnische Vertiefung (Wahlfach)
      • 11a.2 Programming in C ( 0.0h VC / 2.0 ECTS)
        • 700.015 Programming in C (2.0h VC / 2.0 ECTS)
          Absolvierung im 3., 4., 5., 6. Semester empfohlen
  • Bachelorstudium Informationstechnik (SKZ: 289, Version: 22W.1)
    • Fach: Informationstechnische Vertiefung sowie mathematische Ergänzung (Wahlfach)
      • 10b.2 Programming in C ( 0.0h VC / 2.0 ECTS)
        • 700.015 Programming in C (2.0h VC / 2.0 ECTS)
          Absolvierung im 3., 4., 5., 6. Semester empfohlen
  • Bachelorstudium Informationstechnik (SKZ: 289, Version: 17W.1)
    • Fach: Informationstechnische Vertiefung (Wahlfach)
      • 10a.2 Programming in C/C++ ( 0.0h KS / 2.0 ECTS)
        • 700.015 Programming in C (2.0h VC / 2.0 ECTS)
          Absolvierung im 5. Semester empfohlen
  • Bachelorstudium Informationstechnik (SKZ: 289, Version: 17W.1)
    • Fach: Informationstechnische Vertiefung sowie mathematische Ergänzung (Wahlfach)
      • 10b.2.4 Programming in C/C++ ( 0.0h KS / 2.0 ECTS)
        • 700.015 Programming in C (2.0h VC / 2.0 ECTS)
          Absolvierung im 5. Semester empfohlen
  • Bachelorstudium Robotics and Artificial Intelligence (SKZ: 295, Version: 22W.1)
    • Fach: Design and Modeling Tools for Robotics (Wahlfach)
      • 8.2 Design and Modeling Tools for Robotics ( 0.0h VO, VC, UE, KS / 12.0 ECTS)
        • 700.015 Programming in C (2.0h VC / 2.0 ECTS)

Gleichwertige Lehrveranstaltungen im Sinne der Prüfungsantrittszählung

Sommersemester 2025
  • 700.015 VC Programming in C (2.0h / 2.0ECTS)
Sommersemester 2023
  • 700.015 VC Programming in C (2.0h / 2.0ECTS)
Sommersemester 2022
  • 700.015 VC Programming in C (2.0h / 2.0ECTS)
Sommersemester 2021
  • 700.015 VC Programming in C (2.0h / 2.0ECTS)
Sommersemester 2020
  • 700.016 VC Programming in C (2.0h / 2.0ECTS)
Wintersemester 2019/20
  • 700.016 VC Programming in C (2.0h / 2.0ECTS)
Wintersemester 2018/19
  • 700.016 VC Introduction to Programming in C (2.0h / 2.0ECTS)