Exercise: Python

Questions for: Functions

What will be the output of the program in 16 bit platform (Turbo C under DOS)?
#include<stdio.h>

int main()
{
    int fun();
    int i;
    i = fun();
    printf("%d\n", i);
    return 0;
}
int fun()
{
    _AX = 1990;
}
A:
Garbage value
B:
0 (Zero)
C:
1990
D:
No output
Answer: C

Turbo C (Windows): The return value of the function is taken from the Accumulator _AX=1990.

But it may not work as expected in GCC compiler (Linux).

How many times the program will print "ExamAdept" ?
#include<stdio.h>

int main()
{
    printf("ExamAdept");
    main();
    return 0;
}
A:
Infinite times
B:
32767 times
C:
65535 times
D:
Till stack overflows
Answer: D

A call stack or function stack is used for several related purposes, but the main reason for having one is to keep track of the point to which each active subroutine should return control when it finishes executing.

A stack overflow occurs when too much memory is used on the call stack.

Here function main() is called repeatedly and its return address is stored in the stack. After stack memory is full. It shows stack overflow error.

What is the notation for following functions?
1.  int f(int a, float b)
    {
        /* Some code */
    }

2.  int f(a, b)
    int a; float b;
    {
        /* Some code */
    }
A:
1. KR Notation
2. ANSI Notation
B:
1. Pre ANSI C Notation
2. KR Notation
C:
1. ANSI Notation
2. KR Notation
D:
1. ANSI Notation
2. Pre ANSI Notation
Answer: C
KR Notation means Kernighan and Ritche Notation.
The keyword used to transfer control from a function back to the calling function is
A:
switch
B:
goto
C:
go back
D:
return
Answer: D

The keyword return is used to transfer control from a function back to the calling function.

Example:


#include<stdio.h>
int add(int, int); /* Function prototype */

int main()
{
    int a = 4, b = 3, c;
    c = add(a, b);
    printf("c = %d\n", c);
    return 0;
}
int add(int a, int b)
{
/* returns the value and control back to main() function */
   return (a+b);
}

Output:
c = 7

Ad Slot (Above Pagination)
Quiz