Hello, when I compile the following code in my gcc compiler I don't get any errors, but it returns to the prompt, why? Is that what we call a "crash". I originally got some errors, then fixed them, now it isn't showing the user the printf statement and allowing the user to input (scanf), it's just returning to the prompt. The following code is an example from my textbook, I have copied it exactly. Terminal looks Like this....
Scott-Deans-MacBook-Pro:~ scottdean$ gcc ~/documents/legaldate.c
Scott-Deans-MacBook-Pro:~ scottdean$ gcc ~/documents/legaldate.c
Scott-Deans-MacBook-Pro:~ scottdean$
Scott-Deans-MacBook-Pro:~ scottdean$ gcc ~/documents/legaldate.c
Scott-Deans-MacBook-Pro:~ scottdean$ gcc ~/documents/legaldate.c
Scott-Deans-MacBook-Pro:~ scottdean$
Code:
/*prints a date in legal form */
#include <stdio.h>
main ()
{
int month, day, year ;
printf ("Enter date (mm/dd/yy): ") ;
scanf ("%d /%d /%d", &month, &day, &year) ;
printf ("Dated this %d", day) ;
switch (day) {
case 1: case 21: case 31:
printf ("st") ; break ;
case 2: case 22:
printf ("nd") ; break ;
case 3: case 23:
printf ("rd") ; break ;
default: printf ("th") ; break ;
}
printf("day of") ;
switch (month) {
case 1: printf ("January") ; break;
case 2: printf ("February") ; break;
case 3: printf ("March") ; break;
case 4: printf ("April") ; break;
case 5: printf ("May") ; break;
case 6: printf ("June") ; break;
case 7: printf ("July") ; break;
case 8: printf ("August") ; break;
case 9: printf ("September") ; break;
case 10: printf ("October") ; break;
case 11: printf ("November") ; break;
case 12: printf ("December") ; break;
}
printf (", 19%.2d.\n", year) ;
return 0 ;
}