Registrierung Kalender Mitgliederliste Teammitglieder Suche Häufig gestellte Fragen Zur Startseite

Informatiker Board » Themengebiete » Praktische Informatik » Übung mit structs » Hallo Gast [Anmelden|Registrieren]
Letzter Beitrag | Erster ungelesener Beitrag Druckvorschau | An Freund senden | Thema zu Favoriten hinzufügen
Neues Thema erstellen Antwort erstellen
Zum Ende der Seite springen Übung mit structs
Autor
Beitrag « Vorheriges Thema | Nächstes Thema »
Nunzio
Jungspund


Dabei seit: 18.04.2013
Beiträge: 13

Übung mit structs Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Hey, Ich hab versucht ein Programm zu schreiben um Autodaten zu verwalten, nur leider bekomm ich das nicht ans laufen.

Könnt ihr mir einen Tipp geben? Ich weiß echt nicht wo der Fehler ist. :/

Vielen Dank im Voraus.

code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
#include <stdio.h> 
#include <string.h> 
#include <stdlib.h> 
#define MAX 30  

void addcar(int nr, struct car new[]){ 	
printf("Bitte geben Sie die Marke des Wagens an: "); 	
fgets(new[nr].marke, 30, stdin); 	
printf("Bitte geben Sie das Modell des Wagens an: "); 	
fgets(new[nr].modell, 30, stdin); 	
printf("Bitte geben Sie das Baujahr des Wagens an: "); 	
fgets(new[nr].baujahr, 30, stdin); 
printf("Bitte geben Sie die Pferdestärken des Wagens an: "); 	
fgets(new[nr].ps, 30, stdin); 
}   

struct car { 	
char marke[MAX]; 	
char modell[MAX]; 	
int baujahr; 	
int ps; } inf[200];
 
int main(void){ 	
static int fertig = 0; 	
char menu; 	
static int index = 0;; 	 	
while(fertig!= 1){ 		
printf("Willkommen in der Automobildatenbank AMDB.\n"); 		
printf("Bitte waehlen Sie unter folgenden Aktionen:\n"); 		
printf("a : Auto in Datenbank aufnehmen.\nl : Alle eingespeicherten Autos auflisten.\nd : Auto anhand von Index loeschen.\ne : Beenden der Datenbank.\n"); 		scanf("%c", &menu); 		
getchar(); 		
switch(menu){ 			
case 'a' : 			
addcar(index, inf); 			
index++; 			
break; 			
case 'l' : 			
break; 			
case 'd' : 			
break; 			
case 'e' : 			
fertig = 1; 			
break; 			
default : 			
printf("Funktion nicht verfuegbar. Versuchen Sie es erneut."); 			break; 		 		
} 	
} 	
return 0; 
}


Ist natürlich noch nicht fertig. Und sorry für die fehlenden Tabs, irgendwie kopiert er die hier nicht rein.

Dieser Beitrag wurde 2 mal editiert, zum letzten Mal von Nunzio: 27.01.2016 01:57.

27.01.2016 01:53 Nunzio ist offline E-Mail an Nunzio senden Beiträge von Nunzio suchen Nehmen Sie Nunzio in Ihre Freundesliste auf
eulerscheZahl eulerscheZahl ist männlich
Foren Gott


Dabei seit: 04.01.2013
Beiträge: 2.859

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Markiere deinen Code mal. Die Einrückungen sind schon vorhanden, nur eben am Ende der Zeile.
Jetzt kompiliert es zumindest:
code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
#include <stdio.h> 
#include <string.h> 
#include <stdlib.h> 
#define MAX 30  

//Deklaration der struct kommt vor Verwendung
struct car { 	
	char marke[MAX]; 	
	char modell[MAX]; 	
	int baujahr; 	
	int ps; } 
inf[200];

void addcar(int nr, struct car new[]){ 	
	printf("Bitte geben Sie die Marke des Wagens an: "); 	
	fgets(new[nr].marke, MAX-1, stdin); //MAX - 1 statt 30	
	printf("Bitte geben Sie das Modell des Wagens an: "); 	
	fgets(new[nr].modell, MAX-1, stdin); 	
	printf("Bitte geben Sie das Baujahr des Wagens an: ");
	scanf("%d", &(new[nr].baujahr)); //das ist kein string
	printf("Bitte geben Sie die Pferdestärken des Wagens an: "); 	
	scanf("%d", &(new[nr].ps));
}   
 
int main(void){ 	
	static int fertig = 0;
	char menu;
	static int index = 0;
	while(fertig!= 1) { 		
		printf("Willkommen in der Automobildatenbank AMDB.\n"); 		
		printf("Bitte waehlen Sie unter folgenden Aktionen:\n"); 		
		printf("a : Auto in Datenbank aufnehmen.\nl : Alle eingespeicherten Autos auflisten.\nd : Auto anhand von Index loeschen.\ne : Beenden der Datenbank.\n");
		scanf("%c", &menu); 		
		getchar(); 		
		switch(menu){ 			
			case 'a' : 			
				addcar(index, inf); 			
				index++; 			
				break; 			
			case 'l' : 			
				break; 			
			case 'd' : 			
				break; 			
			case 'e' : 			
				fertig = 1; 			
				break; 			
			default : 			
				printf("Funktion nicht verfuegbar. Versuchen Sie es erneut.");
				break; 		 		
		} 	
	}
	return 0; 
}


__________________
Syntax Highlighting fürs Board (Link)
27.01.2016 06:06 eulerscheZahl ist offline Beiträge von eulerscheZahl suchen Nehmen Sie eulerscheZahl in Ihre Freundesliste auf
Baumstruktur | Brettstruktur
Gehe zu:
Neues Thema erstellen Antwort erstellen
Informatiker Board » Themengebiete » Praktische Informatik » Übung mit structs