25. november 2004 - 22:39
Der er
8 kommentarer og 1 løsning
Switch case - hvorfor virker det ikke
#include <stdio.h> #include <time.h> #include <stdlib.h> int main(void) { int a; srand(time(0)); a=rand()%2; printf("%d",a); switch (a){ case '1': printf("1"); while(1); case '2': printf("2"); while(1); } return 0; }
Annonceindlæg fra Barco
25. november 2004 - 22:40
#1
while(1); går i uendelig løkke. Jeg tror at du mener: break;
25. november 2004 - 22:42
#2
Nej desværre...den går slet ikke ned i casen!! Den står bare i sort!!
25. november 2004 - 22:43
#3
Iøvrigt er: a=rand()%2; sjældent god. a=(rand()>>8)%2; er sikkert bedre. Det skyldes at low bits normalt er mindre random end high bits i den type pseudo random number generators som man kalder LCG.
25. november 2004 - 22:44
#4
Hov du skal også bruge tal i case labels. Prøv: #include <stdio.h> #include <time.h> #include <stdlib.h> int main(void) { int a; srand(time(0)); a=rand()%2; printf("%d",a); switch (a){ case 1: printf("1<n"); break; case 2: printf("2\n"); break;; } return 0; }
25. november 2004 - 22:44
#5
#include <stdio.h> #include <time.h> #include <stdlib.h> int main(void) { int a; srand(time(0)); a=rand()%2; printf("%d",a); switch (a){ case 1: printf("1\n"); break; case 2: printf("2\n"); break;; } return 0; }
25. november 2004 - 22:44
#6
Og fortvivl ikke hvis du ikke forstod den med LCG.
12. december 2004 - 19:42
#7
OK ?
12. december 2004 - 20:27
#8
Jep tak for hjælpen, beklager den sene accept
12. december 2004 - 20:33
#9
systemet ignorerer dig hvis du bare klikker accepter - du skal markere svarerens navn i combo boxen inden du klikker accepter
Kurser inden for grundlæggende programmering