Programmieren - alles kontrollieren 4.938 Themen, 20.667 Beiträge

C : Auswahlmenü mit Switch-Schleife soll Fkt. aufrufen

icecap / 2 Antworten / Flachansicht Nickles

Hallo Leute, soll folgendes Programm erstellen:


Einige Messwerte sollen in ein array eingegeben werden und daraus Mittelwert und Maximum bestimmt werden. Das ganze soll mit einem Auswahlmenü geschehen, das folgenden Aufbau hat:


(1) daten aufnehmen


(2) Mittelwert berechnen


(3) maximum angeben


(4) exit


Mein Problem ist nun, dass ich erst seit 4 Wochen C lerne und nicht weiß wie ich erreichen kann, dass


1. Beim Treffen einer Auswahl die Teilfunktion ausgeführt wird UND dann wieder zum Auswahlmenü zurückkehrt


2. sich die Teilfunktion erst auf Tastendruck beendet


3. Die Bildschirmausgabe gelöscht wird, bevor er wieder ins Auswahlmenü zurückkehrt.


Ich hoffe dass ihr mir weiterhelfen könnte, meinen bisherigen Code poste ich mal mit:


---------------------------------------------------------------------------------------------------------------------------------------------


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


int auswahl, n, m, anzahl;
double *messwerte, summe, mittelwert, maximum;


 


void daten()
{
 messwerte = (double *) calloc(n, sizeof(double));
 printf("Bitte Anzahl der Messwerte angeben: ");
 scanf("%d", &anzahl);
 for(n=1; n<=anzahl; n++)
  {
   printf("Bitte Messwert %d eingeben: ", n);
   scanf("%lf", &messwerte[n]);
   summe += messwerte[n];
  }
}


void mittel()
{


 mittelwert=summe/(n-1);
 printf("Mittelwert = %lf", mittelwert);
}


void max()
{
 maximum=messwerte[1];
 for(m=1; m<=n; m++)
  {
   if(messwerte[m]>maximum)
    maximum=messwerte[m];
  }
 printf("Maximalwert = %lf", maximum);
}


int main()
{
 do{
 printf("(1) Daten aufnehmen\n(2) Mittelwert berechnen\n(3) Maximalwert angeben\n(4) EXIT\n\n");
 printf("Bitte Auswahl treffen: ");
 scanf("%d", &auswahl);
 printf("\n\n\n");
 switch(auswahl)
  {
   case 1: daten();
   case 2: mittel();
   case 3: max();
   case 4: return 0;
   default: printf("Bitte geben Sie eine gueltige Auswahl ein (Ziffern 1-4\n)");
  }
 }
while(auswahl != 4);
 return 0;
}


 

bei Antwort benachrichtigen