kleines Programm läuft nicht



  • Hallo,

    ich verstehe nicht, warum dieses Programm nicht läuft.
    Nach der Eingabe von vector[1] funktioniert das Programm nicht mehr.

    Grüße, Max

    #include <stdio.h>
    #include <stdlib.h>
    
    int myfflush(){
    	int c;
    	while((c=getchar())!='\n' && c!=EOF);
    	return 0;
    }
    int main(void){
    	int j,N = 3;
    
    	double* vector = (double*) malloc(N*sizeof(double));
    
    	for(j=0; j<N; ++j){
    		printf("Eingabe: vector[%d] = ",j);
    		scanf("%d",vector[j]);
    		myfflush();
    	}
    	printf("\n");
    }
    


  • scanf ewrwartet die Adresse von einem Objekt.
    Und %d ist zur Eingabe von Dezimalzahlen bei int da.
    Der Formatspecifier für double ist %lf (oder %le oder %lg)

    scanf("%lf", &vector[j]);
             ^   ^
    


  • gut, danke dir. 🙂


Anmelden zum Antworten