This is ment to be in C code Write a function called previou
This is ment to be in C code. Write a function called previous_month() that returns the previous month. Start with the code
enum month {jan = 1, feb, …, dec};
typedef enum month month;
If dec is passed as an argument to the function, nov should be returned.
Any help would be appreciated. thank you
Solution
#include<stdio.h>
 #include <string.h>
 enum month {Jan=1,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,Dec};
 typedef enum month months;
char *getMonth(enum month mon){
 switch (mon)
 {
 case Jan: return \"Jan\";
 case Feb: return \"Feb\";
 case Mar: return \"Mar\";
 case Apr: return \"Apr\";
 case May: return \"May\";
 case Jun: return \"Jun\";
 case Jul: return \"Jul\";
 case Aug: return \"Aug\";
 case Sep: return \"Sep\";
 case Oct: return \"Oct\";
 case Nov: return \"Nov\";
 case Dec: return \"Dec\";
 }
 }
 char *previous_month(char *curr){
    char *prevMonth;
    int i;
   
    for( i=2;i<13;i++){
        if(strcmp(curr,getMonth((months)i))==0){
            prevMonth=getMonth((months)(i-1));
            return prevMonth;
        }
    }
    return \"\";
 }
int main()
 {
    char x[3];
    char *y;
 printf(\"please enter the month\ \");
 scanf(\"%s\",x);
 y=previous_month(x);
 printf(\"%s\",y);
 return 0;
 }

