Paules-PC-Forum.de Anzeige:

Microsoft Windows Intune: PC-Verwaltung und -Sicherheit in der Cloud: Updateverwaltung, Anti-Virus und vieles mehr!


Zurück   Paules-PC-Forum.de > Programmierung > C/C++, Visual C++, Visual C++.NET

C/C++, Visual C++, Visual C++.NET Fragen und Antworten zu C/C++, Visual C++ und Visual C++.NET

EM-Tippspiel

Paule bei Facebook


Paule bei Twitter


Letzte Forenthemen
Gehe zum ersten neuen Beitrag Rechner fährt herunter,...
Aufrufe: 94, Antworten: 5
Gehe zum ersten neuen Beitrag PPF - Shoppingwahn
Aufrufe: 50850, Antworten: 1390
Gehe zum ersten neuen Beitrag PPF - Spiel "Wörter weiter...
Aufrufe: 26624, Antworten: 4194
Gehe zum ersten neuen Beitrag Windows Oberfläche (Schrift,...
Aufrufe: 177, Antworten: 10
Gehe zum ersten neuen Beitrag Von Live CD Windowspfad...
Aufrufe: 65, Antworten: 5
Gehe zum ersten neuen Beitrag TabCtrl
Aufrufe: 122, Antworten: 12
Gehe zum ersten neuen Beitrag Dateien lassen sich nicht...
Aufrufe: 18, Antworten: 2
Gehe zum ersten neuen Beitrag Suche Programm um Werbung zu...
Aufrufe: 50, Antworten: 2
Gehe zum ersten neuen Beitrag McAfee AVERT Stinger...
Aufrufe: 14, Antworten: 0
Gehe zum ersten neuen Beitrag Sticky Password 6.0.2...
Aufrufe: 26, Antworten: 0
Zeige:





Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 16.04.2007, 21:42   #1 (Direktlink)
FranktheTank
Gast
 
Beiträge: n/a
Standard Implementierung von einen C Programm

Hallo, habe folgendes Programm(siehe unten), jetzt soll ich das Programm implementieren, was ist damit gemeint, kann mir jemand zu mein Prog ein Bsp machen oder Tipps geben:

Genauer Auftrag lautet:

2.Funktionen (implementiert in externen Modulen):


# include <stdio.h>
# include <string.h>
# include <stdlib.h>
# include <conio.h>

#define MAX 10

typedef struct {
char titel [20];
char schlagwort [20];
char autor [20];
char isbn [20];
} BUCH;

//////////////////////////////////////////
// Prototypen der Funktionen:

BUCH* heap_reservieren( int );

int eingeben ( BUCH*, int );
int einlesen ( BUCH*, FILE* );
int speichern ( int, BUCH*, FILE* );
void sortieren ( int, BUCH* );
void suchen ( int, BUCH* );
void zeigen ( int, BUCH* );

///////////////////////////////////////////
// Globale Daten

char datei [] = "bibliothek.dat";

///////////////////////////////////////////////////////////////////////

int main (){

BUCH* bibliothek = NULL;
FILE* fin = NULL;
FILE* fout = NULL;
char z = '0';
int aktAnzahl = 0;

///////////////////////////////////////////////////////////////////
// Datenbank oeffnen und automatisch einlesen

bibliothek = heap_reservieren(MAX); // Dynamischen Vektor anlegen

aktAnzahl = einlesen ( bibliothek, fin);

////////////////////////////////////////////////////////////
// Bildschirmmaske aufbauen

do {

//clrscr();
system("COLOR 0b");
printf("\n==================================\n"
" Bitte waehlen Sie aus: \n"
" 1. Eingabe (Tastatur) \n"
" 2. Einlesen (Datei) \n"
" 3. Zeigen (Bildschirm) \n"
" 4. Speichern (Datei) \n"
" 5. Sortieren \n"
" 6. Suchen \n"
" 7. EXIT \n"
"==================================\n"
"Ihre Wahl -> ");

///////////////////////////
// 2. Nutzereingabe lesen:
z = getche();
fflush(stdin);
clrscr();

///////////////////////////
// 3. Analyse der Nutzereingabe
// und Funktionsaufrufe

switch( z ) {
case '1':
aktAnzahl = eingeben (bibliothek, aktAnzahl);
break;
case '2': // 2. Einlesen (Datei)
aktAnzahl = einlesen( bibliothek, fin );
break;
case '3': // 3. Ausgabe (Bildschirm) ersonen[0]), compare );
zeigen (aktAnzahl, bibliothek);
break;
case '4': // 4. Speichern (Datei)
speichern( aktAnzahl, bibliothek, fout );
break;
case '5': // 5. sortieren
sortieren (aktAnzahl, bibliothek);
break;
case '6': // 6. Suchen
suchen(aktAnzahl, bibliothek);
break;
case '7': // 7. EXIT
break;
default:
printf("Falsche Eingabe");
break;
}
} while( z != '7' );
return 0;
}
///////////////////////////////////////////
// FUNKTIONEN:

BUCH* heap_reservieren( int temp ) {

return malloc (temp * sizeof (BUCH));
}

///////////////////////////////////////////
// Von Tastatur einlesen

int eingeben (BUCH vek[], int akt){

int i;

for (i=akt; i<MAX; i++) {
puts( "========================");
printf("======= %i. Buch: =======\n",i+1);
puts ("\nGeben Sie den Titel ein: ");
gets(vek[i].titel);
fflush (stdin);
if (vek[i].titel[0]=='\0') break;
puts ("Geben Sie ein Schlagwort ein: ");
gets(vek[i].schlagwort);
fflush (stdin);
puts ("Geben Sie den Autor ein: ");
gets(vek[i].autor);
fflush (stdin);
puts ("Geben Sie die ISBN ein: ");
gets(vek[i].isbn);
fflush (stdin);
}
//printf("%i Buecher eingelesen", i);
//getchar();
return i;
}
/////////////////////////////////////////////////
// Von Datei einlesen

int einlesen ( BUCH* bib, FILE* fin ) {

int ok=0;
fin= fopen(datei, "rb");
if( fin == NULL ) {
puts ("Error FIN: Datenbank nicht vorhanden");
getchar();
fclose(fin);
return -1;
}
ok = fread ( bib, sizeof(BUCH),MAX,fin);
printf("%i Datensaetze eingelesen", ok);
fclose(fin);
return ok;
}

//////////////////////////////////////////////////
// Datenbank speichern

int speichern( int min, BUCH* bib, FILE* fout) {

int ok=0;
fout = fopen(datei, "wb");
ok = fwrite ( bib, sizeof(BUCH), min, fout);
printf("%i Datensaetze gespeichert", ok); ;
fclose(fout);
return ok;
}

//////////////////////////////////////////////////
// Datensaetze in Grossbuchstaben wandeln
// und sortieren

void sortieren (int akt, BUCH vek[]) {

int j, k=0;
BUCH temp;

///Grossbuchstaben
for (j=0; j < akt; j++) {
if (vek[j].titel[0] > 96) {
vek[j].titel[0] -= 32;
}
if (vek[j].schlagwort[0] > 96) {
vek[j].schlagwort[0] -= 32;
}
if (vek[j].autor[0] > 96) {
vek[j].autor[0] -= 32;
}
}

////// Sortieren

while (k++ < MAX) {
for (j=1; j < akt; j++) {

if (strcmp (vek[j-1].titel, vek[j].titel) > 0) {
temp = vek[j];
vek[j] = vek[j-1];
vek[j-1] = temp;
}
}
}
clrscr();
printf("Verarbeitung beendet, Buecher sortiert");
//getchar();
}

////////////////////////////////////////////////
// Datensatz suchen

void suchen (int akt, BUCH temp[]) {
int i;
char schlagwort[20];
puts("Nach welchem Schlagwort suchen:");
gets(schlagwort);

for(i=0; i < akt; i++) {

if(strcmp(schlagwort, temp[i].schlagwort)==0) {

printf("\n\n====Buch Nr. %i ====",i+1);
printf("\nTitel: %s", temp[i].titel);
printf("\nAutor: %s", temp[i].autor);
printf("\nSchlagwort: %s", temp[i].schlagwort);
printf("\nISBN: %s", temp[i].isbn);
}
}
puts("\n=== Suche beendet =================");
getchar();
clrscr();
}

////////////////////////////////////////////////
// Bildschirmausgabe

void zeigen (int akt, BUCH vek[]) {

int j;
if(akt==0) {
printf("Nichts auszugeben...\n");
} else {
for (j=0; j < akt; j++) {
printf("\n===== %i. Buch =======",j+1);
printf("\nTitel: %s", vek[j].titel);
printf("\nAutor: %s", vek[j].autor);
printf("\nSchlagwort: %s", vek[j].schlagwort);
printf("\nISBN: %s", vek[j].isbn);
printf("\n=====================\n");
}
}
getchar();
clrscr();
}
  Mit Zitat antworten
Werbung

Windows 7 Tipps und Tricks in Bildern

Alt 18.04.2007, 10:53   #2 (Direktlink)
FranktheTank
Gast
 
Beiträge: n/a
Standard

hat sich erledigt mit implementieren ist ja das programmieren gemeint

-----Thread kann geschloßen werden.
  Mit Zitat antworten
Antwort

  Paules-PC-Forum.de > Programmierung > C/C++, Visual C++, Visual C++.NET

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen erlaubt, neue Themen zu verfassen.
Es ist Ihnen erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an




Alle Zeitangaben in WEZ +2. Es ist jetzt 06:40 Uhr.


Powered by vBulletin® Version 3.8.7 (Deutsch)
Copyright ©2000 - 2012, vBulletin Solutions, Inc.
Powered by vBCMS® 2.7.0 ©2002 - 2012 vbdesigns.de
(c) Paules-PC-Forum.de

::: Impressum :::

Search Engine Optimization by vBSEO 3.3.2