Consider the following C program: int fun(int *i) { *i += 10;…

Question Answered step-by-step Consider the following C program: int fun(int *i) { *i += 10;… Consider the following C program:int fun(int *i) {  *i += 10;  return  4;}void main() {  int x = 1;  x = fun(&x) + x + x++ ;}What is the value of x after the assignment statement in main, assumingoperands are evaluated left to right.operands are evaluated right to left.2. What does the following Scheme function do?(define (y s lis)  (cond    ((null? lis) ‘() )    ((equal? s (car lis)) (cdr lis))    (else (y s (cdr lis))))) 3. Rewrite the following Scheme function as a tail-recursive function (hint: you can use an auxiliary helper function):(DEFINE (doit n)  (IF (= n 0)    0    (+ n (doit (- n 1))))) 4. Write the Scheme function from the question above, in Haskell. Engineering & Technology Computer Science SOFTWARE 123 Share QuestionEmailCopy link Comments (0)