Wo liegt er Fehler???



  • Hallo!
    Ich habe ein C-Programm geschrieben, das einen Hörtest auswertet. Ich bekomme aber die Fehlermeldung: LIBCD.lib(crt0.obj) : error LNK2001: Nichtaufgeloestes externes Symbol _main
    Debug/Hörtest.exe : fatal error LNK1120: 1 unaufgeloeste externe Verweise
    Fehler beim Ausführen von link.exe.
    obwohl ich die Klammern richtig gesetzt habe.
    Kann einer von euch mir helfen?

    #include <stdio.h>
    #include <math.h>
    
    void main()
    {
      int x, n;
      int H[] = {8, 38, 67, 12, 3};
      int V[] = {0, 12, 18, 24, 36};
      double N, VM, VMA, VS;
      printf("Geben Sie die Nummer der Gruppe ein:\n");
      scanf("%d", &x);
      N=H[x];
    
      while (x =! 0)
      {
        N=N+H[x-1];
      }
      printf("Gesamtzahl der Testpersonen: %d", N);
    
      while (x =! 0)
      {
        n=H[x]*V[x];
        n=n+H[x-1]*V[x-1];
      }
      VM=n/N;
      printf("Der arithmetische Mittelwert: %g", VM);
    
      while (x =! 0)
      {
        m=H[x]*(V[x]-VM);
        m=m+(H[x-1]*(V[x-1]-VM));
      }
      VMA=m/N;
      printf("Die mittlere Abweichung: %g", VMA);
    
      while (x =! 0)
      {
        l=H[x]*pow(V[x]-VM,2);
        l=l+(H[x-1]*pow(V[x-1]-VM,2));
      }
      VS=sprt(l/N);
      printf("Die mittlere Abweichung: %g", VS);
    }
    


  • Ja klar.



  • in der tat.



  • ok, ich kann zwar nicht bei der sache mit dem linker-fehler helfen, aber kann es sein, dass dein programm nichtmal bis zum zweiten printf kommt, wenn x!=0?



  • Original erstellt von Honk:
    ... wenn x!=0?

    LOL ... schau nochmal genau hin ... 🙂



  • versuch es mal mit:

    int main ()
    {
     ...
     return 0;
    }
    

    oder

    int main (int argc, char **argv)
    {
     ...
     return 0;
    }
    

    deine Schleifen verstehe ich allerdings auch nicht so ganz,
    willst du nicht mal zu sehen, dass die Abbruchbedingung irgendwann einmal erfüllt ist?

    mfg
    -bg-



  • ähm sorry, hab mich wohl verkuckt

    aber trotzdem ist die bedingung immer erfüllt, nur dass es egal ist welchen wert x hat
    oder sehe ich da wieder was falsch?



  • jemand hat vermutlich deine <stdio.h> verändert und dort circa am ende des zweiten drittels eingefügt:
    #define main moin



  • Original erstellt von Honk:
    **ähm sorry, hab mich wohl verkuckt

    aber trotzdem ist die bedingung immer erfüllt, nur dass es egal ist welchen wert x hat
    oder sehe ich da wieder was falsch?**

    naja, fast.

    Die Bedinung ist immer wahr, weil x immer !0 zugewiesen wird... und !0 ist bekanntermassen immer true 😉



  • ja, so meinte ich das ja...
    mein ausdruck lässt halt zu wünschen übrig 😃


Anmelden zum Antworten