Ich habe ein Problem beim Einstellen einer vom Benutzer eingegebenen Variablen. Ich habe etwas eingegeben und es speichert einen anderen Wert. Ziemlich frustrierend. Also wäre jede Führung großartig.Warum speichert die Variable einen anderen Wert als die Benutzereingaben?
Beraten Sie sich, es gibt ziemlich viele printf()
, als ich versuchte, das Problem zu lokalisieren. Ich bin auch immer noch einen Einfluß von C.
#include <stdio.h>
int vehicletype, in, out; // User Entered Info
int vehicleID[5000];
float vehicleCharge[5000];
int i;
// Variables for Main Function
int q; // Loop Control
float z;
int main(){
for(q = 1; q != 1518944; q++) {
printf("Enter your position in the parking queue: ");
// Take the queue entered by the user and assign it to i
scanf("%d\n", &i);
// Take the user input(which is being held in the variable i) and place it into the 'i'
//position of the ID array
vehicleID[q] = i;
printf("Enter the time(past 0600) you wish to start parking: \n");
//take the time and pass it to the time function to determine roundup
scanf("%d\n", &in);
printf("Enter the time(before 2200) you wish to leave: \n");
scanf("%d\n", &out);
printf("Time in: %d\nTime out: %d\n", in, out);
}
return 0;
}
@MM zu bekommen versucht, ich soll 0617 in die „in“ Variable und 1547 für die „out“ (Ich benutze diese später eingeben kann, um herauszufinden, wie viel geparkt), aber die Ausgabe, die ich bekomme, wenn ich die Variablen überprüfe, indem ich "in" und "out" drucke, ist 1 und 399 beziehungsweise.
Was sagt Ihr Compiler, wenn Sie versuchen, diesen Code zu kompilieren? – EOF
Was ist bei einer bestimmten Eingabe die tatsächliche und erwartete Ausgabe? Welche Variable scheint den Wert zu verändern? Haben Sie versucht, den Code in einem Debugger zu durchlaufen? Und bitte versuchen Sie, uns ein [Minimal, ** Vollständig ** und verifizierbares Beispiel] (http://stackoverflow.com/help/mcve) zu erstellen. –
für (z = 1; z == 5000; z ++) <- z == 5000? Ja wirklich? – Ccr