C -Programmierung Programmierung in C 1. Die Header Dateien 2. Die Hauptfunktion 3. Die Ausgabe „Hallo Welt“ 4. Variablen und Datentypen 5. Eingabe und Ausgabe von Werten 1. Einbindung der Headerdateien In dem Präprozessor werden die Header Dateien angegeben. Diese Header Dateien beinhalten Befehle, die in C nicht vorhanden sind, sondern erst geladen werden müssen. Zum Beispiel wird für eine Ausgabe und Eingabe von Zeichen die Header Datei iostream gebraucht. Es gibt aber noch mehr Header Dateien, die eine Ein- und Ausgabe auf dem Bildschirm ermöglichen. Z.B. die Datei stdio. Diese Dateien werden wie folgt eingebunden: #include <headerfile.h> Seite 1 C -Programmierung In C endet der Headerdateiname immer auf .h . Die Headerdatei wird immer an den Anfang des Programms geschrieben. Sie wird durch den Präprozessor #include eingebunden. 2. Die Hauptfunktion In der Hauptfunktion steht das eigentliche Programm. Hier wird der Ablauf in der Programmiersprache wiedergegeben. Die Hauptfunktion kann mit dem Befehl void beginnen, welche diese als eine Funktion angibt. Des Weiteren beinhaltet sie den Wert main(), welcher diese Funktion als Hauptfunktion definiert. Der Inhalt dieser Funktion wird im Anhang durch geschweifte Klammern umfasst. Der Aufbau einer Hauptfunktion: void main() { inhalt } Der Funktionskopf wird allerdings nicht am Ende der Zeile durch ein Semikolon beendet! Seite 2 C -Programmierung 3. Die Ausgabe „Hallo Welt“ Wie schon zuvor gesagt gibt es mehrere Möglichkeiten der Ausgabe von Text auf dem Bildschirm. In diesem Falle halte ich mich an die Ausgabe durch den Befehl printf, da dieser wohl der gängigste unter allen ist. Dieser Befehl benötigt den headerfile stdio. Die soll so viel heissen wie Standart Input Output. Es ist also der Standard Headerfile zum Eingeben bzw. zum Ausgeben von Daten. Die Syntax: printf("Text"); Dies stellt nur eine einfache Ausgabe dar. Bei der Zusammensetzung des Programms wird die Ausgabe in die gegebene Funktion zwischen den geschweiften Klammern eingesetzt. Nun muss nur noch die benötigte Headerdatei eingebunden werden. #include <stdio.h> void main( ) { printf("Hallo Welt!"); } Dies stellt schon ein lauffähiges Programm unter C dar. Falls es vorkommt, dass Ausgaben geschrieben werden sollen, die mehrzeilig sind, so wird inmitten des Auszugebenden Textes der Parameter eingegeben. Darauf folgt ein sofortiger Zeilenumbruch. Ein Beispiel #include <stdio.h> void main( ) { printf("Hallo Welt!\nHalloWelt"); } Die Ausgabe Sieht dann wie folgt aus: Hallo Welt! Hallo Welt! 4. Variablen und Datentypen Wie in der Mathematik stehen Variablen für einen bestimmten Wert. Dieser Wert ist wie der Name schon sagt variabel. Bei der Eingabe in der Programmierung gilt es, einen Wert nur ein mal eingeben zu müssen, Seite 3 C -Programmierung um mit diesen Wert im Laufe des Programms weiter zu arbeiten. Die Variable ist also ein Platzhalter für einen Wert. Dieser soll bei jedem neuen Programmdurchlauf neu und verändert eingegeben werden können. Ein Beispiel: Es soll ein Programm geschrieben werden, in dem die Mehrwertsteuer für ein bestimmtes Produkt berechnet werden soll. Im Lauf der Zeit ändert sich natürlich der Mehrwertsteuersatz. Um dieses Programm nicht immer umprogrammieren zu müssen, wenn sich der Mehrwertsteuersatz ändert, soll der Mehrwertsteuersatz auch eingegeben werden können. Der Mehrwertsteuersatz ist somit variabel. Es soll allerdings nicht nur immer ein Artikel berechnet werden, sondern der Preis des Artikels soll immer neu eingegeben werden können. Also ist auch der Preis des Artikels variabel. Somit sind schon zwei verschiedene Variablen vorhanden. Zum einem der Mehrwertsteuersatz zum anderen der Preis des Artikels. Es gibt allerdings verschiedene Typen von Variablen. Zunächst unterscheidet man dort unter Zahlen und Zeichenabfolgen. Die Unterscheidung hat einen ganz besonderen Grund. Für jede Variable die erstellt wird, wird im Hauptspeicher, dem Random Access Memory (RAM), des Rechners eine bestimmte Grösse an Speicherplatz reserviert. Auf diesen Speicherplatz kann nicht mehr zugegriffen werden. Somit ist es logisch einer Variable die auf jeden fall aus einer Zahl besteht nicht so viel Speicherplatz zugehen zu lassen, wie einer Variable, in die Text eingegeben wird. Somit erhöht man die Effizienz an optimaler Speicherausnutzung. Verschiedene Variablentypen int variablenname ganzzahlige Variablen char variablenname[Anzahl an Zeichen] Text float variablenname Dezimalzahlen (4 Byte Speicherplatz) double variablenname Dezimalzahlen (8 Byte Speicherplatz) long double variablenname Dezimalzahlen (10 Byte Speicherplatz) Seite 4 C -Programmierung 5. Eingabe und Ausgabe von Werten Wie bei der Ausgabe von Daten gibt es auch bei der Eingabe von Daten mehrere Möglichkeiten eine Ausgabe zu erstellen. Auch hier benutze ich in diesem Fall den Gegensatz zu dem Befehl printf, den Befehl scanf. Dieser Befehl benötigt genau wie der Befehl printf die Headerdatei stdio. Die Syntax von scanf lautet wie folgt: scanf("&variablentyp",variablenname); Der Variablentyp ist in diesem Fall nicht wie bei der Festlegung von Variablen der eigentliche Variablentyp. Es ist vielmehr ein Platzhalter für die variable in der Ausgabe &s &d Text Zahlen Dies sind vorerst nur die wichtigsten Typen, die in unserem folgenden Programm gebraucht werden. Das Programm wie in Kapitel 4 soll beschrieben werden. Zunächst wird überlegt, welche Variablentypen gebraucht werden und welche Headerdateien einzubinden sind. In diesem Fall ist nur die Headerdatei stdio notwendig. Ausserdem werden die beiden Variablen Mehrwertsteuer und Preis gebraucht Zusätzlich wird eine Variable benötigt, die das Ergebnis beinhaltet. Da diese Dezimalzahlen sind, wird der Variablentyp float gebraucht. Das Programm #include <stdio.h> //einbinden der Headerdatei void main() //Hauptfunktion { float mehrwertsteuer; // Definition der Variablen float preis; float ergebnis; printf("Bitte geben sie den aktuellen Mehrwertsteuersatz ein: "); scanf("&d\n",mehrwertsteuer); printf("Bitte geben sie den Preis des Artikels ein: "); scanf("&d",preis); ergebnis = preis * mehrwertsteuer / 100; printf("Die Mehrwertsteuer beträgt &d DM",ergebnis); } Seite 5