Vraag & Antwoord

Programmeren

fout

6 antwoorden
  • [code:1:72e3bf834f]#include <stdio.h> #define maandag 1 /*hier heb ik de dagen gedefinieert*/ #define dinsdag 2 #define woensdag 3 #define donderdag 4 #define vrijdag 5 #define zaterdag 6 #define zondag 7 int main() { int vandaag; /*dit is de variabele vandaag*/ { printf("welke dag het is:\n "); /*hier vraag ik om de dag*/ scanf("%s", &vandaag); /*hier sla ik de dag op in vandaag */ } if ((vandaag == zaterdag) || (vandaag == zondag)) /*hier vergelijkt hij of de dagen kloppen*/ { printf("Weekend\n%s",vandaag); /*als het zondag of zaterdag is krijg je dit*/ } else { printf("Doordeweeksl\n %c%s",vandaag); /*anders dit*/ } return 0; } [/code:1:72e3bf834f] na een paar aanpassing werkt hij niet meer namelijk hetvolgende hij geeft altijd doordeweeks aan en hij geeft (zoals ik heb aangegeven) welke dag je hebt ingetoets... want hij geeft dan een fout aan.....:S Greetz
  • Het probleem is denk ik dat je een variable als int gedeclareerd hebt maar er een string in probeerd te zetten. Dit gaat natuurlijk nooit goed. Bij het weergeven geef je aan dat er een string moet worden weergegeven maar als waarde geef je een int op. Je moet alle %s vervangen door %i. En ik weet niet waar die %c voor is maar volgens mij hoort die daar ook niet. Het uiteindelijke resutaat is denk ik niet wat je verwacht want hij geeft de dagen dan weer als 1,2,3..... en niet maandag ,dinsdag .....
  • nee sorry, als ik zondag of zaterdag invul krijg ik nog doordeweeks, daar gaat het mij\, ik wil dan weekend krijgen.. greetz
  • Je moet wel een "6" of "7" invullen dan he. Geen "Zaterdag" of "Zondag".
  • [quote:810472886f="bosjvd"]Je moet wel een "6" of "7" invullen dan he. Geen "Zaterdag" of "Zondag".[/quote:810472886f] Aanvulling: Wellicht heb je wat aan het [i:810472886f]case[/i:810472886f]-statement En als je toch strings als invoer wilt vergelijken, dan zou ik de weekdagen in een [i:810472886f]array[/i:810472886f] stoppen.
  • Sorry, maar je programma klopt simpelweg niet. Ik zal het proberen uit te leggen: Met [code:1:7c9a96c129] scanf("%s", &vandaag); [/code:1:7c9a96c129] probeer je een string te koppelen aan een integer variabele. Dat gewoon niet, want het zijn verschillende types. Waarschijnlijk denk je dat, als je bijvoorbeeld 'zondag' intypt, het programma dat vertaalt naar de integer-waarde 7, maar zo werkt het niet. Je hebt een constante gedefinieerd met naam 'zondag' en waarde 7. De naam 'zondag' is nu alleen beschikbaar binnen de programmacode. Zodra je je programma compileert vervangt de compiler ieder voorkomen van 'zondag' voor de waarde 7. Als je dus als input 'zondag' invoert, kan dat dus niet vertaald worden naar integer 7, maar wordt het gewoon gezien als het woord 'zondag'. Probeer anders toch eens een goede tutorial te vinden, die een en ander goed uitlegt. Mocht je er echt niet een kunnen vinden, dan kan ik je er eventueel nog wel een toemailen. Het is al een oudje, maar je leert er wel goed de principes van het C-programmeren van.[/code]

Beantwoord deze vraag

Weet jij het antwoord op deze vraag? Registreer of meld je aan met je account

Dit is een gearchiveerde pagina. Antwoorden is niet meer mogelijk.