2. Programmierung in C

Ähnliche Dokumente
2. Programmierung in C

Allgemeines. Verschiedene Sprachkonzepte C-Sprachfamilie C-ähnliche Programmiersprachen Allgemeines zu C. #include <stdio.h>

Informatik: Abschnitt 4

Informatik: Abschnitt 4

2. Programmierung in C

Einleitung Entwicklung in C Hello-World! Konstrukte in C Zusammenfassung Literatur. Grundlagen von C. Jonas Gresens

2. Programmierung in C

2. Programmierung in C

Die Programmiersprache C Eine Einführung

Vorlesung C-Kurs 9:15-10:45 Mathe 11:15-12:45 1. Woche Hörsaal 1 2. Woche Hörsaal 7

Programmierung 1 für Wirtschaftsinformatik Wintersemester 2013/14

16. März 2016 artb5-v1.1

Tutorium Rechnerorganisation

Computergrundlagen Programmieren in C

Grundlagen der Programmierung

L4. Erster Schritt zum Programmieren

4. Objektorientierte Programmierung mit C++

Propädeutikum. Dipl.-Inf. Frank Güttler

Einführung in die C-Programmierung

Historien AB"C" Einführung in die Programmierung mit C/C++ Dipl. Ing. (FH) Hans-Peter Kiermaier. Dr. Bjarne Stroustrup Entwickler von C++

Kapitel 3. Mein erstes C-Programm

Grundlagen der Programmentwicklung

Programmieren in C. Eine Einführung in die Programmiersprache C. Prof. Dr. Nikolaus Wulff

Einstieg in die Informatik mit Java

Informatik Programmiersprachen eine kurze Übersicht

3. Einführung in C Programmierung Einführung in C Programmierung

C programmieren. Jürgen Wolf

Angewandte Mathematik und Programmierung

Einführung in die Programmierung mit VBA

Algorithmus: Kochrezept

Grundlagen von C. Ausarbeitung von Jonas Gresens

Grundlagen der Programmierung

C Überlebenstraining

Einführung in die Programmiersprache C

Grundlagen. Die Komponenten eines C Programms. Das erste Programm

M. Graefenhan Übungen zu C. Blatt 3. Musterlösung

Einleitung. Informationsquellen: - Webseite zur Vorlesung, Abschnitt Informationen zu C und C++ Kurzeinführung in C/C++

C allgemein. C wurde unter und für Unix entwickelt. Vorläufer sind BCPL und B.

Modul Entscheidungsunterstützung in der Logistik. Einführung in die Programmierung mit C++ Übung 1

Zum Abschluss wird gezeigt, wie aus einem C++ Quell-Programm ein ausführbares Programm erzeugt wird. 1. Installation von NetBeans...

Einführung Datentypen Verzweigung Schleifen. Java Crashkurs. Kim-Manuel Klein May 4, 2015

Die Programmiersprache C

Inhalt. Peter Sobe 63. Felder in C

Grundlagen der Programmierung

GI Vektoren

8a. Exkurs.NET. 8a.1.NET Architektur

Programmierung mit C Zeiger

Programmiervorkurs. Organisation: Steffen Gebert, Alexander Wolff. Tutoren: Jürgen Zöller, Jonathan Stoll. Wintersemester 2012/2013

2. Programmierung in C

Prinzipien der Softwareentwicklung S. Strahringer

1. Der Einstieg in Java

Praktikum im Bereich Praktische Informatik Echtzeitgraphik in C++ und DirectX10. computer graphics & visualization

Praktikum Ingenieurinformatik. Termin 2. Verzweigungen (if-else), printf und scanf, while-schleife

1Schnelleinstieg 14. 2Wie aus einer einfachen Textdatei. 3 Wie man eigene Programme erstellt 30. Inhaltsverzeichnis. ein Programm wird 20

Erste Schritte der Programmierung in C

Kompaktkurs C-Programmierung

Kurze Einführung in die Programmiersprache C++ und in Root

Organisatorisches. Einführung in die Programmierung in C Hochschule Regensburg Universitätsstraße 31, Regensburg

Programmierung in C. Grundlagen. Stefan Kallerhoff

Zusammenfassung des Handzettels für Programmieren in C

Zeiger, Arrays und Strings in C und C++

Einführung in den Einsatz von Objekt-Orientierung mit C++ I

S. d. I.: Programieren in C Folie 4-1. im Gegensatz zu Pascal gibt es in C kein Schlüsselwort "then"

Hello world. Sebastian Dyroff. 21. September 2009

Teil IV. Grundlagen der Programmierung

Es gibt zwei verschiedene Arten, wie Programme auf dem Rechner ausgeführt werden:

Einheit Lexikalische Grundlagen der Programmiersprache C Lexikalische Einheiten

Fachhochschule Wiesbaden - Fachbereich DCSM. Skriptsprachen. Moderne, objekt-orientierte Skriptsprachen mit Betonung auf Ruby

Inhalt. Zeichen und Zeichenketten (engl. Strings)

C für Java-Programmierer

Programmieren I + II Regeln der Code-Formatierung

Hydroinformatik I: Hello World

C-Programmierung unter TOS ATARI ST

Einführung in die Programmierung Wintersemester 2011/12

Multimedia im Netz Wintersemester 2011/12

Dr. Monika Meiler. Inhalt

Dr. Monika Meiler. Inhalt

Die Programmiersprache C99: Zusammenfassung

Programmieren in C. Burkhard Bunk

Elementare Konzepte von

Werkzeuge zur Programmentwicklung

Welche Informatik-Kenntnisse bringen Sie mit?

Inhalt. 1. Einführung in die Informatik. 2. Algorithmen. 3. Programmiersprache Visual Basic. 4. Grundlagen der Datenbanktechnologie.

RO-Tutorien 3 / 6 / 12

Programmierkurs C++ Grundlagen. Prof. Dr. Stefan Fischer Institut für Telematik, Universität zu Lübeck

1. Der Einstieg in Java. Was heißt Programmieren?

Java Einführung VARIABLEN und DATENTYPEN Kapitel 2

C++ Teil 1. Sven Groß. 9. Apr IGPM, RWTH Aachen. Sven Groß (IGPM, RWTH Aachen) C++ Teil 1 9. Apr / 19

GI Grundlagen der Informatik (GI)

Javaprogrammierung mit NetBeans. Variablen, Datentypen, Methoden

Programmiersprachen Einführung in C. Unser erstes C-Programm. Unser erstes C-Programm. Unser erstes C-Programm. Unser erstes C-Programm

Aktivitäten in C# /.NET umsetzen

Programmieren in C/C++ und MATLAB

C-Grundlagen. Einführung von Tronje Krabbe 1/21

IT-Basics 2. DI Gerhard Fließ

Übung zu Grundlagen der Betriebssysteme. Einführungsveranstaltung

Grundlagen der C++ - Programmierung für das MiniBoard von qfix 1

2 Einfache Rechnungen

1. Übung zu "Numerik partieller Differentialgleichungen"

5 Grundlagen der Java-Syntax

Transkript:

2. Programmierung in C Inhalt: Überblick über Programmiersprachen, Allgemeines zur Sprache C C: Basisdatentypen, Variablen, Konstanten, Operatoren und Ausdrücke Anweisungen und Kontrollstrukturen (Steuerfluss) Funktionen Felder (Arrays) Zeiger, Zeigerarithmetik, Zeiger-Dereferenzierung Zeichenketten (Strings) Benutzerdefinierte Datentypen (Struktur, Aufzählungstyp) Speicherverwaltung und Datenstrukturen Dateiarbeit Bitlevel-Verarbeitung Die Programmierung in C erfolgt anhand ausgewählter Algorithmen Peter Sobe 1

Überblick Minimalbeispiel für ein C-Programm #include <stdio.h> int main() { printf( hello world\n ); } return 0; Weiteres: C-ähnliche Programmiersprachen Verschiedene Sprachkonzepte Allgemeines zu C Peter Sobe 2

C-ähnliche Sprachen: C-ähnliche Sprachen C-Shell - Skriptsprache zur UNIX-Shell-Programmierung C++ - Objektorientierte Erweiterung, 1985 Java C-ähnliche, objektorientierte Sprache, SUN 1995 C# C++-ähnlich, objektorientiert, Microsoft 2001 C++.NET mit Microsoft-Erweiterungen für.net, s.g. managed C++ Objective-C - objektorientiertes C, nicht kompatibel zu C++ JavaScript und PHP Sprachen zur Programmierung von Web-Anwendungen, mit objektorientierten Erweiterungen und viele andere, die von C beeinflusst wurden Peter Sobe 3

Verschiedene Sprachkonzepte Programmiersprachen unterteilt man in s.g.: Imperative Programmiersprachen Beschreibung einer Berechnungsvorschrift durch einzelne Schritte und einen Steuerfluss Beispiele: PASCAL, C, C++, Java Deklarative Programmiersprachen beschreiben das Problem oder das Ziel des Programms Beispiele: Datenbankabfragesprache SQL, Logische Programmiersprache PROLOG Peter Sobe 4

Allgemeines zu C Imperative Programmiersprache: C-Anweisungen werden in der im Programm angegebenen Reihenfolge ausgeführt: zeilenweise (von oben nach unten) innerhalb Zeile möglicherweise mehrere Anweisungen, dann von links nach rechts Steuerfluss-Anweisungen (if, for, while, repeat, break, continue) zur Beeinflussung der Abarbeitungsreihenfolge Zum Vergleich: manch andere Programmiersprachen (logische und funktionale, beispielsweise PROLOG) arbeiten die Ausdrücke nicht notwendigerweise in der im Programm angegebenen Reihenfolge ab. Peter Sobe 5

Ein Programm besteht aus: Allgemeines zu C Variablenvereinbarungen: hier werden Bezeichner für die Verarbeitungselemente festgelegt. Es wird ein Typ für jede Variable angegeben, z.b. Ganzzahl (int) oder Zeichen (char) Anweisungen: zur Bildung/Berechnung der Variablenwerte zum Aufruf von Funktionen zur Beeinflussung des Steuerflusses Mehrfach auftretende Anweisungsfolgen werden oft in Funktionen gekapselt. Eine Hauptfunktion (main-funktion) ist der Punkt, an dem mit der Ausführung eines C-Programms begonnen wird. Peter Sobe 6

Allgemeines zu C C-Programme werden in ein Binärprogramm übersetzt Das Übersetzerprogramm ist der s.g. Compiler. Die Übersetzung verlangt ein syntaktisch richtiges C-Programm, d. h. das Programm muss sprachlichen Regeln genügen. Andere Programmiersprachen werden zum Teil interpretiert, d.h. Anweisungen werden schrittweise übersetzt und ausgeführt. Peter Sobe 7

Erzeugung eines ausführbaren Programms Vor dem Ausführen des Programms: vorgegebene Header ausführbarer Code C-Programm C-Programm Assembler Programm Maschinencode Linker C-Präprozessor C-Compiler Compiler (2. Stufe) Bibliotheken Peter Sobe 8

Aufbau eines C-Programms // Beispielprogramm fakultaet.c #include <stdio.h> int main() { int fakultaet; int i,n; printf("geben Sie bitte n ein >"); scanf("%d",&n); Kommentar Include-Präprozessor-Anweisung main-funktion Variablen-Deklarationen fakultaet = 1; for (i=2;i<=n;i++) fakultaet = fakultaet * i; printf("die Fakultaet von %d betraegt %d \n",n, fakultaet); return 1; } Anweisungen Steuerfluss- Anweisung Peter Sobe 9

Allgemeines zu C Programmierung in C Die Sprache C nutzt ein Alphabet aus Buchstaben a-z, A-Z, aus Ziffern 0-9 und aus Sonderzeichen, z.b.!,?, (,), _ Aus dem Alphabet werden Variable, Schlüsselworte, Konstanten, Zeichenketten, Operatoren, Trennzeichen und Kommentare gebildet. Zwischen Groß- und Kleinschreibung wird unterschieden. Peter Sobe 10

Kommentare Kommentare in einem C-Programm werden beim Übersetzen übergangen. Sie haben keine Auswirkung auf das Programm. Kommentare sind aber nützlich, um Erklärungen im Programm zu notieren. Oft dienen Kommentare der Dokumentation von Programmteilen Beginn und Ende durch /* und */ /* Das ist ein Kommentar */ /* Das ist ein mehrzeiliger Kommentar */ // Das ist ein einzeiliger Kommentar Peter Sobe 11

Kommentare int main() { /* Programm zur Berechnung des groeßten gemeinsamen Teilers */ int a, b, c; scanf( %d,&a); scanf( %d,&b); while(a!=b) { if (b>a) { // Regel 1: Tausch ggt(b,a) = ggt(a,b), sinnvoll, wenn b>a c=a; a=b; b=c; } a=a-b; // Regel 3: ggt(a-b,b)=ggt(a,b), wenn a>b } // Regel 2: ggt(a,a) ergibt a printf( ggt=%d\n,a); return 0; } 12

Formatfreiheit C ist eine formatfreie Sprache, d.h. das Aussehen, Zeilenumbrüche, Einrückungen haben keinen Einfluss auf die Funktion. Beispiele: int main() { scanf("%d",&a); printf(" quadrat = %d\n", a*a); return 1; } int main() { scanf("%d",&a); printf(" quadrat = %d\n", a*a); return 1; } Trotzdem sollte das Programm wie links dargestellt aussehen, um bessere Lesbarkeit zu gewährleisten. Peter Sobe 13

C - Entwicklungsumgebungen Microsoft Visual Studio 2013 für Windows-Systeme in Praktikumslaboren installiert kostenfreie Version als Visual Studio Express verfügbar Peter Sobe 14

C - Entwicklungsumgebungen QtCreator mt gcc-compiler für Windows und Linux-Systeme in Praktikumslaboren zum Teil installiert kostenfreie Version als OpenSource-Version verfügbar Peter Sobe 15

C - Entwicklungsumgebungen Es existieren viele weitere C/C++-basierte Systeme, mit Entwicklungsumgebungen und Übersetzern für verschiedene Plattformen, z.b. gcc (GNU C Compiler) für LINUX Intel-C Compiler C-Compiler für spezielle Prozessoren (Beispiel Atmel, AVR) Peter Sobe 16