Problem mit Struct
-
Hallo Leute ich brauche bitte eure Hilfe bei einem Programm... Es will einfach nicht hinhauen das ich ein Wort einer Char Variablen in einem Struct übergebe... Weiß wer von euch woran das liegt bzw wie ich das lösen kann?
Das Prog ist natürlich bei weitem nicht fertig ich arbeite mit schritt für schritt vor bin aber für jede Anregdfung und jeden Tipp dankbar um das ganze besser zu verstehen./* Schreiben Sie ein Programm, welches max. 100 Bücher einer Buchhandlung verwalten kann Dazu benötigen Sie eine Struktur, die: Inventarnummer Titel Preis Stückzahl speichern kann. Über ein Menü sollen die Daten eingegeben, nach Inventarnummer gesucht und ausgegeben, sowie das Programm beendet werden. */ #include<stdio.h> #include<string.h> #include<stdlib.h> struct buch { int nummer; char titel[30]; long preis; int stckzahl;}; int main(void){ struct buch index; int eingabe; do { printf("Bitte wählen sie einen Punkt aus\n"); printf("Buch hinzufügen:Wählen Sie 1\n"); printf("Bestimmtes Buch ausgeben:Wählen Sie 2"); printf("Exit:Wähles Sie 3 \n"); printf("Bitt nun Zahl eingeben:"); scanf("%d",&eingabe); }while((eingabe>3)); if (eingabe==1) { printf("Fügen Sie nun ihr Buch hinzu\n"); printf("Buchnummer:"); scanf("%d",&index.nummer); printf("\n Nun den Titel:"); scanf("%c",index.titel); //printf("\n Nun den Preis:"); } else if(eingabe==2) { printf("Bich suchen\n"); } else if(eingabe==3) { printf("Exit"); return 0; } }
-
Eine char Variable hat nur genug platz für einen Buchstaben, du musst einen String einlesen. Nutze %s. Oder besser: %29s. (Bei scanf)
-
Großen Dank! Das war des Rätsels Lösung... das war mir voll entfallen das char nur 1 Zeichen speichert...