Jennesta
Erfahrenes Mitglied
Hallo,
ich soll für die Uni ein Programm schreiben, indem der Benutzer am anfang eine Zahl eingeben soll, wie viele Artikel er eingeben möchte. Dann wird in einer Schleife für jeden Artikel , die Nummer, die Bezeichnung und das Datum eingegeben.
Am Ende wird dann alles Tabellarisch ausgegeben.
Ich bekomme in der Fehlerkonsole aber 13 Fehler und eine Warnung, wobei die meisten aufeinander aufbauen, habe aber keinen blassen Schimmer, was ich nun besser machen soll. Ich poste hier mal den Code und die Fehler...hofffe das mir jemand helfen kann, oder Verbesserungsvorschläge geben kann.
mfg Jennesta
ich soll für die Uni ein Programm schreiben, indem der Benutzer am anfang eine Zahl eingeben soll, wie viele Artikel er eingeben möchte. Dann wird in einer Schleife für jeden Artikel , die Nummer, die Bezeichnung und das Datum eingegeben.
Am Ende wird dann alles Tabellarisch ausgegeben.
Ich bekomme in der Fehlerkonsole aber 13 Fehler und eine Warnung, wobei die meisten aufeinander aufbauen, habe aber keinen blassen Schimmer, was ich nun besser machen soll. Ich poste hier mal den Code und die Fehler...hofffe das mir jemand helfen kann, oder Verbesserungsvorschläge geben kann.
Code:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main() {
int i, k, durchlaeufe;
char artikelnummer[20];
char artikel[30];
char datum[11];
char *ptr;
printf("Bitte geben sie an, wie viele Artikel sie einlesen wollen (max:10):");
scanf("%d", &durchlaeufe);
char grarray[2][durchlaeufe];
for(i=1 ; i<=durchlaeufe ; i++) {
printf("Bitte Artikelnummer eingeben\n");
fgets(artikelnummer, 20, stdin);
/* Zeiger auf die Adresse des zeichens \n setzen*/
if(strchr(artikelnummer, '\n') != NULL) {
ptr = strrchr(artikelnummer, '\n');
*ptr = '\0';
}
grarray[0][(i-1)] = artikelnummer;
printf("Bitte Artikelbezeichung eingeben\n");
fgets(artikel, 30, stdin);
if(strchr(artikel, '\n') != NULL) {
ptr = strrchr(artikel, '\n');
*ptr = '\0';
}
grarray[1][(i-1)] = artikel;
printf("Bitte Datum eingeben\n");
fgets(datum, 11, stdin);
if(strchr(datum, '\n') != NULL) {
ptr = strrchr(datum, '\n');
*ptr = '\0';
}
grarray[2][(i-1)] = datum;
}
printf("\n");
for(k=1;k<=durchlaeufe;k++) {
printf("%10s - %20s - %15s", grarray[0][(k-1)], grarray[1][(k-1)], grarray[2][(k-1)]);
}
return 0;
}
Code:
1>------ Erstellen gestartet: Projekt: Aufgabe2, Konfiguration: Debug Win32 ------
1>Kompilieren...
1>quelle.c
1>h:\eigene dateien\visual studio 2008\projects\aufgabe2\aufgabe2\quelle.c(12) : warning C4996: 'scanf': This function or variable may be unsafe. Consider using scanf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
1> c:\programme\microsoft visual studio 9.0\vc\include\stdio.h(306): Siehe Deklaration von 'scanf'
1>h:\eigene dateien\visual studio 2008\projects\aufgabe2\aufgabe2\quelle.c(13) : error C2143: Syntaxfehler: Es fehlt ';' vor 'Typ'
1>h:\eigene dateien\visual studio 2008\projects\aufgabe2\aufgabe2\quelle.c(22) : error C2065: 'grarray': nichtdeklarierter Bezeichner
1>h:\eigene dateien\visual studio 2008\projects\aufgabe2\aufgabe2\quelle.c(22) : error C2109: Index erfordert ein Array oder einen Zeigertyp
1>h:\eigene dateien\visual studio 2008\projects\aufgabe2\aufgabe2\quelle.c(29) : error C2065: 'grarray': nichtdeklarierter Bezeichner
1>h:\eigene dateien\visual studio 2008\projects\aufgabe2\aufgabe2\quelle.c(29) : error C2109: Index erfordert ein Array oder einen Zeigertyp
1>h:\eigene dateien\visual studio 2008\projects\aufgabe2\aufgabe2\quelle.c(36) : error C2065: 'grarray': nichtdeklarierter Bezeichner
1>h:\eigene dateien\visual studio 2008\projects\aufgabe2\aufgabe2\quelle.c(36) : error C2109: Index erfordert ein Array oder einen Zeigertyp
1>h:\eigene dateien\visual studio 2008\projects\aufgabe2\aufgabe2\quelle.c(40) : error C2065: 'grarray': nichtdeklarierter Bezeichner
1>h:\eigene dateien\visual studio 2008\projects\aufgabe2\aufgabe2\quelle.c(40) : error C2109: Index erfordert ein Array oder einen Zeigertyp
1>h:\eigene dateien\visual studio 2008\projects\aufgabe2\aufgabe2\quelle.c(40) : error C2065: 'grarray': nichtdeklarierter Bezeichner
1>h:\eigene dateien\visual studio 2008\projects\aufgabe2\aufgabe2\quelle.c(40) : error C2109: Index erfordert ein Array oder einen Zeigertyp
1>h:\eigene dateien\visual studio 2008\projects\aufgabe2\aufgabe2\quelle.c(40) : error C2065: 'grarray': nichtdeklarierter Bezeichner
1>h:\eigene dateien\visual studio 2008\projects\aufgabe2\aufgabe2\quelle.c(40) : error C2109: Index erfordert ein Array oder einen Zeigertyp
1>Das Buildprotokoll wurde unter "file://h:\Eigene Dateien\Visual Studio 2008\Projects\Aufgabe2\Aufgabe2\Debug\BuildLog.htm" gespeichert.
1>Aufgabe2 - 13 Fehler, 1 Warnung(en)
========== Erstellen: 0 erfolgreich, Fehler bei 1, 0 aktuell, 0 übersprungen ==========
mfg Jennesta