2017-01-25 3 views
0

Mein Programm den Benutzer ermöglicht zu geben Sie bis zu 10 Zahlen/Zeichen in eine Textdatei. Ich benutze dann:Erstellen einer Funktion in Abhängigkeit von Benutzereingaben

um den eingegebenen char/int von ASCII in ganze Zahl zu konvertieren.

Beispiel:

Input: e Output: String is e, integer is 0

Input: 10 Output: String is 10, integer is 10

Ich möchte ein Funktion von allen der Benutzer-Eingaben die minimale ganze Zahl anzuzeigen. Ich habe den folgenden Code getestet, um mir die kleinste Ganzzahl zu geben, aber dies ist nicht in einer Funktion enthalten. Ich kann keine Funktion erstellen, die jedes Mal eine andere Anzahl von Benutzereingaben berücksichtigt.

Der folgende Code erfolgreich läuft meine kleinste ganze Zahl zurück:

int minIndex = 0; 
    int minNumber = INT_MAX; 

    if (number <= minNumber) 
    { 
     minNumber = number; 
     minIndedx = i; 
    } 
if (minIndex > 0) 

    printf("min number is %d at position %d\n", minNumber, minIndex); 
else 
    printf("no numbers read in; hence: no minimum calculated.");` 
  1. Wie kann ich nennen diesen Code oben von einer Funktion?
  2. Muss ich alle ganzen Zahlen in einem Array speichern und einen Zeiger verwenden, um den Wert in meinem Array zu zeigen?

Irgendwelche Ideen, wie Sie vorgehen?

Antwort

-1

Alles, was Sie tun müssen, ist den Code in eine Funktion zu setzen und dann diese Funktion aufzurufen.

int minIndex = 0;   //Making Them Global Variables 
int minNumber = INT_MAX; //Making Them Global Variables 
int i = 0;     //Declaring And Initializing The Global 
          //Variable i to keep count of the position. 


number = atoi(word); 
printf("\nstring is \t %s\n", word); 
printf("integer is \t %d\n", number); 
min(number); //Calling function min and passing it value of number 


void min(int number){ 

    if (number <= minNumber){ 

     minNumber = number; 
     minIndedx = i; 
     } 

    if (minIndex > 0) 
    printf("min number is %d at position %d\n", minNumber, minIndex); 

    else 
    printf("no numbers read in; hence: no minimum calculated."); 

    i++; //Every time Incrementing i to update position. 
} 

Führen Sie das Programm in der Schleife und dann mit einem anderen Benutzereingabe jedes Mal, wenn Sie die Funktion min aufrufen, die in variable number gespeichert ist, die Funktion, wenn die Anzahl an sie übergeben ist kleiner als der eingestellte Mindest, es aktualisiert den Wert der Mindestanzahl, so erhalten Sie die Mindestanzahl der Benutzereingaben.

HINWEIS: Dies ist kein gültiges Programm und Sie müssen es in Ihren Code einbetten und ändern, um es Ihren Anforderungen anzupassen. Ich kann es nicht machen, weil ich nicht weiß, wie du Input nimmst.

+0

Bitte formatieren Sie diesen Code richtig. Und woher kommt der Wert von "i" in deinem Code? –

+0

@Squeamishossifrage ist das ok? –

+0

@Olaf Ich weiß, ich habe es gemacht, um OP zu sagen, wie es geht? –

Verwandte Themen